flaskapp根目录的jinja变量

2024-04-25 13:13:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我一直在开发一个应用程序,使用非常简单的Flask系统,并且我使用了一个jinja模板来写出一堆链接,这些链接对应于Flask中的页面,这些页面是由如下定义的:

@app.route(/<var1>/<var2>)
...
...

在测试服务器中,这些链接工作得很好,但是当我从测试服务器移动到代理服务器后面的服务器时,我遇到了一个问题:href链接没有考虑代理插入的额外目录名。在

^{pr2}$

我的jinja etemplate看起来是这样的,但是我想知道是否有一种方法可以把一个指定根目录的变量放进去,而不是放反斜杠。在

{% block navigation %}
{% for record in db.values() %}
 <li><a href="/{{db.name}}/{{record.name}}">{{record.name}}</a></li>
{% endfor %}
{% endblock %}

任何帮助都将不胜感激。感谢烧瓶队!在


Tags: name服务器模板app应用程序flaskdb定义
2条回答

也许你在找^{}函数?在

<li><a href="{{ url_for('view_func_name', 
                        var1=db.name, 
                        var2=record.name) }}">{{record.name}}</a></li>

首先,正如@reclosedev所说,可以使用^{}函数生成URL(假设视图函数名为myview

<a href="{{ url_for('myview', var1=db.name, var2=record.name) }}">

其次,如果您使用反向代理,请使用更新请求环境的this decorator包装WSGI应用程序,以便Flask生成正确的url。在

相关问题 更多 >

    热门问题