首页 > 解决方案 > 如何在 Flask 中运行 .html 文件?- 错误代码 404

问题描述

所以我的项目结构非常简单:

项目结构

这是我的 app.py 的代码:

from flask import Flask, render_template

app = Flask(__name__)

@app.route('/')

@app.route('/index')
def index():
    return render_template("index.html")


if __name__ == '__main__':
    app.run(debug = True)

因此,应该使用所有设计正确构建网站(当我通过 PyCharm 内部的浏览器功能调用网站时,它会正确加载),但是当通过 app.py 进行时,我会收到很多 404 错误,如下所示:

127.0.0.1 - - [21/Mar/2020 23:25:30] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [21/Mar/2020 23:25:30] "GET /vendor/bootstrap/css/bootstrap.min.css HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /vendor/fontawesome-free/css/all.min.css HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /css/grayscale.min.css HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /img/ipad.png HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /img/bg-masthead.jpg HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /vendor/jquery/jquery.min.js HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /vendor/bootstrap/js/bootstrap.bundle.min.js HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /vendor/jquery-easing/jquery.easing.min.js HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /js/grayscale.min.js HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /img/demo-image-01.jpg HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /img/demo-image-02.jpg HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:31] "GET /vendor/jquery-easing/jquery.easing.min.js HTTP/1.1" 404 -
127.0.0.1 - - [21/Mar/2020 23:25:32] "GET /js/grayscale.min.js HTTP/1.1" 404 -

所有文件都放置在正确的目录中,否则在使用内部浏览器功能时它将无法工作,但我不明白为什么 app.py 不能正确获取这些资产。

//编辑:通过PyCharm浏览器功能执行时,他的index.html应该可以工作(prntscr.com/rkdz6k),网站加载正常,因此模板是正确的。但是以某种方式通过 app.py 执行 .html 不起作用

任何人都可以帮助我吗?

标签: pythonhtmlflaskassets

解决方案


修复:所有文件夹(如上图所示)不属于模板文件夹,它们应属于“静态”文件夹的一部分。模板文件夹仅包含 index.html,而 css、img、js 和供应商(在我的示例(模板)中)放置错误。

现在将这 4 个文件拖入“静态”后,一切都使用 Code 200 执行,并且模板按预期加载。


推荐阅读