我有主index.html
文件,它包含几个指向子html文件的链接。例如,index.html
如果用户单击链接,则该链接将定向到子页面,intro.html
但似乎render_template
仅接收一个html
文件。如何使用连接多个HTML文件render_template
?
文件结构:templates / index.html text.html
我只想链接text.html
来自的文件index.html
。
在中index.html
,我将具有以下链接:
<a href="text.html">Link</a>
然后我要指示Link
加载内容text.html
第二次编辑
@app.route('/myhtml', methods=['GET'])
def myhtml():
return render_template('myhtml.html')
我想要这样的事情。如果我键入localhost:8000/myhtml
它应该链接到myhtml.html
这很简单-您只需要从url捕获要请求的文件,然后使用它来查找现有模板:
from flask import Flask, render_template, abort
from jinja2 import TemplateNotFound
app = Flask(__name__)
@app.route('/', defaults={'page': 'index'})
@app.route('/<page>')
def html_lookup(page):
try:
return render_template('{}.html'.format(page))
except TemplateNotFound:
abort(404)
if __name__ == '__main__':
app.run()
如果您只是尝试访问127.0.0.1:5000
它,则默认将page
变量设置为index
,因此将尝试使用,render_template('index.html')
而如果您尝试访问127.0.0.1:5000/mypage
它,则将搜索mypage.html
。
如果失败,它将终止并显示404 not found错误。
该示例完全源自Flask文档中的简单蓝图示例。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句