Python 如何在jinja2模板中强制重新执行函数?

Python 如何在jinja2模板中强制重新执行函数?,python,google-app-engine,jinja2,Python,Google App Engine,Jinja2,我是GAE/Python新手 我有一个调用客户筛选函数的jinja2模板: 电话如下所示: {% if constant-parameter|AccessOK %} <li><a href="/tokens-step1">Tokens</a></li> {% endif %} 当我运行此程序时,在启动应用程序引擎(我有日志记录条目)后第一次访问网站时,它会被调用 当我访问其他页面或刷新页面时,将不再调用筛选器 我需要在每个页面视图上执

我是GAE/Python新手

我有一个调用客户筛选函数的jinja2模板:

电话如下所示:

{% if constant-parameter|AccessOK %} 
    <li><a href="/tokens-step1">Tokens</a></li>
{% endif %} 
当我运行此程序时,在启动应用程序引擎(我有日志记录条目)后第一次访问网站时,它会被调用

当我访问其他页面或刷新页面时,将不再调用筛选器

我需要在每个页面视图上执行过滤器

我被告知这是因为参数是一个常量,如果我把它改成变量,它每次都会执行。在我的例子中,我需要传递常量,所以我尝试传递2个参数(其中变量=currentuser,存在只是为了诱使系统每次执行过滤器)

我得到一个错误,表明系统无法识别第二个参数


有谁能告诉我如何确保每次都调用客户筛选器,或者给我一个如何传递两个参数的示例吗?

这可能不是最优雅的解决方案,但它可以工作

我添加了一个不断变化的变量作为附加参数(在本例中为currentuser)。这意味着我必须传递两个参数

我的模板语句现在看起来像:

{% if currentuser|AccessOK(constant-parameter) %} 
    <li><a href="/tokens-step1">Tokens</a></li>
{% endif %} 
我忽略函数中的xCurrentUser参数

如果有人有更好的解决方案,请添加

谢谢

{% if currentuser|AccessOK(constant-parameter) %} 
    <li><a href="/tokens-step1">Tokens</a></li>
{% endif %} 
def AccessOK(xCurrentUser, PermissionID):