Link to a specific location in a Flask template

橙三吉。 提交于 2019-12-17 16:38:21

问题


In HTML I can link directly to a specific location on a page, assuming there's an element with the given id:

<a href="http://www.example.com/stuff.html#exactlocation">Go there</a> 

In Flask I tried to add the anchor to render_template but I get jinja2.exceptions.TemplateNotFound: stuff.html#exactlocation.

@main.route('/exactlocation')
def exactlocation():
    return render_template('stuff.html#exactlocation')

How do I link to a specific location in a template?


回答1:


Thanks to dirn's comments I managed to get this working with the code below.

Pass the _anchor keyword to url_for to append an anchor to the generated URL.

nav menu:

<a href="{{ url_for('.stuff', _anchor='exactlocation') }}">Go to specific id on suff page</a>

Flask route:

@main.route('/')
def stuff():
    return render_template('stuff.html')

stuff.html:

...
<section id="exactlocation">
...


来源:https://stackoverflow.com/questions/35843675/link-to-a-specific-location-in-a-flask-template

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!