0


【完美解决】python flask如何直接加载html,css,js,image等下载的网页模板

python flask如何直接加载下载的网页模板

问题

本人网页开发小白,刚学了用flask,下载了一套网页模板,启动一个网页的确很简单,但是发现无论怎么改这里的 static_folder值都无法找到CSS,JS,IMAGE,FONT等资源
app = Flask(name, static_folder=‘static’, template_folder=‘templates’)
报错如下:

127.0.0.1 - - [04/Mar/2023 22:03:00] "GET / HTTP/1.1" 200 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /css/bootstrap.css HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /css/bar.css HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /css/style.css HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /css/style4.css HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /js/script.js HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /js/simplyCountdown.js HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /css/simplyCountdown.css HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /js/amcharts.js HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /js/bootstrap.min.js HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /images/clone.jpg HTTP/1.1" 404 -
127.0.0.1 - - [04/Mar/2023 22:03:00] "GET /images/profile.jpg HTTP/1.1" 404 -

搜出来的大多数文章都只是说目录要放在static下,或者是要修改html文件里href后面的路径,用url_for之类的。
改目录怎么改都不管用。
最笨的办法就是把html里的href后的路径改了,我也试过,有用,比如把
href=“css/bootstrap.css” 改成 href=“/static/css/bootstrap.css”,一个index.html就有十几处,改了后的确渲染成功了,但是当点击其他链接要打开其他html时又提示找不到。
所以不可能把哪些全都改一遍吧,太费劲了,应该还是flask的参数配置没对,终于参考这篇找到了真正的解决办法。

解决办法

在不改动任何下载的网页模板html情况下,
加上static_url_path=‘’,就可以加载指定的文件夹里的静态文件。我把静态文件也指定到templates里,从而让他们和html文件保持在同一目录,跟下载下来的一样,就可以完美加载所有模板里的资源了。

from flask import Flask, request, render_template

app = Flask(__name__, static_url_path='', static_folder='templates', template_folder='templates')@app.route('/', methods=['GET','POST'])defhome():return render_template('/index.html')
标签: flask python

本文转载自: https://blog.csdn.net/arbraham/article/details/129340291
版权归原作者 arbraham 所有, 如有侵权,请联系我们删除。

“【完美解决】python flask如何直接加载html,css,js,image等下载的网页模板”的评论:

还没有评论