关于flaks模板渲染的问题,flask-bootstrap的使用
jinja2.exceptions.TemplateNotFound: bootstrap/base.html
下面是python 代码部分:
from flask import Flask,render_template
from flask_script import Manager
from flask_bootstrap import Bootstrap
from flask_moment import Moment
from flask_wtf import Form
from wtforms import StringField,SubmitField
from wtforms.validators import Required
app=Flask(__name__)
manager=Manager(app)
bootstrap=Bootstrap(app)
moment=Moment(app)
app=Flask(__name__)
app.config['SECRET_KEY']='hard to guess string'
表单
class NameForm(Form):
name=StringField('What is your name?',validators=[Required()])
submit=SubmitField('submit')
@app.route('/',methods=['GET','POST'])
def index():
name=None
form=NameForm()
if form.validate_on_submit():
name=form.name.data
form.name.data=''
return render_template('index.html',form=form,name=name)
模板部分
{% extends "base.html" %}
{% import "bootstrap/wtf.html" as wtf %}
{% block title %}Flasky{% endblock %}
{%block page_content%}
<div class="page-content">
<h1>Hello,{%if name%}{{name}}{%else%}Stringer{%endif%}!</h1>
</div>
{{wtf.quick_form(form)}}
{%endblock%}
报错
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
去掉第二个
app=Flask(__name__)
试试。你是不是忘了bootstrap.init_app(app)