我一直收到这个错误:
werkzeug.routing.BuildError: ('mainsite.mainsite_static', {'filename': 'vendor/bootstrap/css/bootstrap.min.css'}, None)
蓝图在我的views.py上声明为:
mainsite = Blueprint("mainsite", __name__, static_folder='mainsite_static')
从layout.html模板调用css文件:
<link href="{{url_for('.mainsite_static', filename='vendor/bootstrap/css/bootstrap.min.css')}}" rel="stylesheet" media="screen">
文件夹结构为:
mainsite |_views.py |_templates | |_layout.html |_mainsite_static |_vendor |_bootstrap |_css |_boostrap.min.css
从我能阅读的一切来看,它应该有效。我重命名了该文件夹,我在Blueprint的声明中添加了static_folder参数。没有其他同名的东西。添加了。 (也试过'mainsite.mainsite_static')
最后,mainsite.mainsite_static出现在url_map
上<Rule '/mainsite_static/<filename>' (GET, OPTIONS, HEAD) -> mainsite.static>,
答案 0 :(得分:1)
这应该可以改为
<link href="{{url_for('mainsite.static', filename='vendor/bootstrap/css/bootstrap.min.css')}}" rel="stylesheet" media="screen">
当你在url_map中突出显示时 - mainsite_static文件夹的端点为mainsite.static
,可以在url_for
中使用