好像我的静态文件没有正确提供。这就是它现在的样子:
myApp
__init__.py
static
img
js
bootstrap.min.js
etc.
这是我的__init__.py
中的应用配置如下所示:
app = Flask(__name__, static_url_path="", static_folder="static")
这是错误:
127.0.0.1 - - [01/Dec/2014 13:12:01] "GET /static/js/bootstrap.min.js HTTP/1.1" 404 -
就url路由而言,没有问题,localhost / home路由到home,localhost /联系路由联系等等。但是找不到静态文件:(我错过了什么?
注意:我在我的Mac上托管这个,纯粹是本地主机
这是我的__init__.py
主要方法:
if __name__ == "__main__":
app.run(host='0.0.0.0', debug=True)
以:
运行python __init.py__
答案 0 :(得分:6)
看起来您正在使用静态文件网址进行硬编码。您告诉Flask服务它们没有URL前缀 - 默认值为/static
- 但日志显示请求转到/static/js/bootstrap.min.js
。您可能在模板文件中有类似以下内容。
<script src="/static/js/bootstrap.min.js"></script>
相反,您应该使用url_for
为您创建网址。将上述内容更改为
<script src="{{ url_for('static', filename='js/bootstrap.min.js') }}"></script>
这将导致
<script src="/js/bootstrap.min.js"></script>