flask render_模板无法使用锚定标记#-jinja2.exceptions.TemplateNotFound

flask render_模板无法使用锚定标记#-jinja2.exceptions.TemplateNotFound,flask,anchor,template-engine,jinja2,Flask,Anchor,Template Engine,Jinja2,在url_for方法中,您可以传入一个_锚参数,以便在页面加载时加载锚标记 如何使用render_模板执行相同的操作 我能 render_template('profile/index.html') 没有任何问题,但当我在html末尾添加锚标记并尝试 render_template('profile/index.html#h1") 我得到模板找不到错误 jinja2.exceptions.TemplateNotFound TemplateNotFound: profile/index.ht

在url_for方法中,您可以传入一个_锚参数,以便在页面加载时加载锚标记

如何使用render_模板执行相同的操作

我能

render_template('profile/index.html') 
没有任何问题,但当我在html末尾添加锚标记并尝试

render_template('profile/index.html#h1")
我得到模板找不到错误

jinja2.exceptions.TemplateNotFound
TemplateNotFound: profile/index.html#h1

基本上,这就是我最后要做的,我在render_模板中传递了一个值

return render_template('profile/index.html', set_tab=1)
在javascript的客户端,我做了以下操作来设置选项卡

<script>
   var obj_load={% if set_tab==1%}1{%else%}0{%endif%};
   tab_load=(obj_load?"#h1":"#");

   $(document).ready(function () {
       if(location.hash || obj_load) {
       $('a[href=' + (location.hash ||  tab_load) + ']').tab('show');
       }
    });

</script>

var obj_load={%if set_tab==1%}1{%else%}0{%endif%};
tab#U荷载=(obj#U荷载?#h1):“#”);
$(文档).ready(函数(){
if(location.hash | | obj_load){
$('a[href='+(location.hash | | | tab_load)+']')。tab('show');
}
});

仅供参考,我正在使用bootstrap 3的选项卡窗格

您想实现什么<代码>渲染模板和的
url\u执行两种截然不同的操作
render_template
采用要加载的模板文件的名称。
#
在这种情况下没有特殊意义。感谢Dim在这里花时间帮助我。也许我在这里想的不对。我有一个有3个选项卡的页面,其中一个有一个表单。当我提交表单时,我会对其进行处理,并希望在打开相同选项卡的情况下重新呈现页面。如果我执行URL重定向,我可以加载表单选项卡,但我会丢失表单值条目。将表单条目设置为session并将其拉回是一个解决方案,但似乎有点粗糙?解决这个问题的一个好方法是使用WT表单,使用类似于populate_obj的东西。render_template将只接受模板的文件名,任何与链接有关的内容都应该转到url_,因为您可能只想向模板传递一个值,该值指示要呈现的选项卡<代码>渲染模板('profile/index.html',active_选项卡='…')