url_for()的Flask模板错误

时间:2015-04-11 02:21:19

标签: python html flask jinja2

我试图为我正在尝试编写的计划应用程序表示并传递多个数据。

我有一个日历视图,我希望能够代表正在安排的人员,他们的预定时间以及他们的预定日期。

所有这些都需要传递到应用程序路由,以便可以使用该信息执行各种查询。这里以字典形式表示我当前数据集的示例:

{'classes': 'CPSC-110', 'dayofweek': 'Monday', 'studentId': 3L, 'hourof': '10:00AM'}

我的模板代码如下所示:

<form class="sumbittingThing" method="post" action="/appoint4">
    {% for thing in results %}
    <tr>
        {% if thing['dayofweek'] == 'Monday' %}
        <td class='mon'><a href={{url_for(appoint4, dayofweek={{thing['dayofweek']}})}}>{{thing['hourof']}}</a>
        </td> 

我收到错误消息

  

&#34; TemplateSyntaxError:期望令牌&#39;:&#39;,得到&#39;}&#39;&#34;

如果有人有任何建议可以更轻松地传递数据,或者知道如何解决这个问题,我非常感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

你的问题在于这段代码:

{{url_for(appoint4, dayofweek={{thing['dayofweek']}})}}

您不需要第二组花括号,因为您的代码已经被处理为python代码。您的代码应该是:

{{url_for(appoint4, dayofweek=thing['dayofweek'])}}