【发布时间】:2019-12-21 18:19:34
【问题描述】:
我自动生成了显示一些数据的数据框。我想将每一行链接到一个路由'/row_details,其中一些列作为参数发送。
@app.route('/')
def index():
df = get_df()
return render_template('table.html', tables=[df.to_html(classes='data')])
@app.route('/row_details')
def row_details():
column1 = request.args.get('column1')
column2 = request.args.get('column2')
#do something with those columns
我想我可以为包含 URL + GET 参数的数据框生成一个新列,但是有没有更好的方法让整行可点击?
模板的重要部分现在看起来像这样:
{% for table in tables %}
{{ table|safe }}
{% endfor %}
【问题讨论】:
-
我认为使用
<a></a>创建列是更好的方法。其他方法需要内部{% for %}和{% if %}来转换模板中的每个值 - 所以它会更复杂。 -
在文档to_html 中我找到了选项
formatters=- 我从未使用过它,但也许它可以转换列中的值。
标签: python pandas flask jinja2