Ссылки внутри DataFrame (Flask) - PullRequest
0 голосов
/ 18 октября 2018

В настоящее время я пытаюсь создать кнопки в одном из столбцов на моем DataFrame, а затем с помощью .to_html распечатать его как DataTable на веб-странице.Мне удалось сделать кнопки кликабельными, используя escape = False в функции to_html, но я не могу заставить ссылки перейти в нужное место.

Ниже моя текущая попытка, я уверен, что это как-то связано с кавычками.

def add_url(data):
    data['second name'] = "<a href='{{ url_for('player', player_id=1) }}'>Click This Button Here</a>"

Такое ощущение, что я пробовал 6 миллионов комбинаций кавычек, но когдаЯ смотрю на созданный html, который всегда имеет случайные кавычки, а не там, где я хочу их видеть, как показано ниже.

HTML-код

Вот моя функция, к которой она должна подключаться, она отлично работает, если я помещаю код прямо в файл .html, я просто могу 'заставить его работать из файла .py внутри DataFrame.

@app.route('/player/<int:player_id>')
def player(player_id):
    data = load_df('Data/players_pickle/'+str(player_id)+'.pickle')
    return render_template('player.html', data=data.to_html(escape=False))

В конечном итоге это должно выглядеть так: DataTable

Любая помощь будет высоко ценится, так как я слишком долго боролся с этим, похоже, что яя пробую одни и те же комбинации снова и снова!

Обновление:

Я продолжал пробовать разные комбинации цитат, но это должно иметь какое-то отношение к кодированию, когда оно идет из .pyв HTML.

Все, что я получаю в адресной строке, когда я нажимаю на ссылку, это

http://127.0.0.1:5000/%7B%7B%20url_for('player',%20player_id=1)%20%7D%7D

Очевидно, он заменяет пробелы, фигурные скобки и т. Д. На Unicode, и независимо от того, что я пытаюсь, он продолжает это делать.Может ли это быть из-за того, что он находится внутри Dataframe и просто невозможно при использовании to_html () сделать так, как должно быть?

1 Ответ

0 голосов
/ 18 октября 2018

Попробуйте:

data['second name'] = '''<a href="{{ url_for('player', player_id=1) }}">Click This Button Here</a>'''
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...