【发布时间】:2019-04-06 14:12:24
【问题描述】:
我正在尝试创建一个小工作板,每个工作卡都是从列表中的烧瓶中动态插入的(现在,稍后将是一个 SQL DB)
当用户单击按钮View Task 时,我希望它转到另一个页面,在该页面中更详细地显示任务/作业。
我想要附加到该按钮的是作业/任务 ID。
这就是我希望/期望按钮发挥作用的方式
{% for task in available_tasks %}
<div>
<a href="{{ url_for('view_task', task_id={{ task['id'] }}) }}">View Task</a>
</div>
{% endfor %}
然后可以将其粘贴到将 ID 作为参数并获取完整作业/任务信息的路由中。
app.route('/view_task/<task_id>')
def view_task(task_id):
task_data = task_database[taskid]
return render_template('detailed_view.html', task_info=task_data)
我的问题是href="url_for('view_task', task_id={{ task['id'] }})" 不起作用,有没有办法做到这一点?
【问题讨论】:
-
是的,这就是通常的做法。我不确定你在问什么; 发回动态数据的更好方法是非常广泛的。
-
它不工作?
href="url_for('view_task', task_id={{ task['id'] }})"它不承认争论。我可以做task_id='1'似乎不喜欢 jinja {{ }} -
啊,是的,你把语法弄混了一点。 但您没有告诉我们您有错误。如有问题,请显示完整的错误消息,并尽可能回溯。
-
而且由于您在此处没有错误,只是输出不正确,因此如果您显示它会很有帮助。请务必查看 Flask 返回给浏览器的 HTML,而不仅仅是浏览器呈现的结果。您会看到
href="..."值有点偏离,不包含实际 URL。