我已经下载了一个网站模板,我想将其与flask集成。基本上,此模板包含asset
文件夹,其中包含css和js文件。我知道通过使用render_template('index.html')
,我可以在localhost上调用index.html。但是,当我这样做时,网页无法正确呈现。我认为flask无法在该文件夹(模板文件夹)中加载js,css等文件。
我的模板文件夹具有index.html以及资产文件夹和其他文件夹。我正在使用下面显示的代码来实际运行index.html。
from flask import Flask, render_template
import os
app = Flask(__name__)
@app.route('/')
def homepage():
return render_template("index.html")
if __name__ == '__main__':
app.run(debug=True)
因此,正在加载index.html,但未加载css文件等。因为如果未加载css文件,则我的网页看起来很沉闷。它只是在白色屏幕上的一些文本。我认为问题出在加载静态文件上,因为我收到一条错误消息,说本地主机上没有文件夹资产。
谢谢。
答案 0 :(得分:0)
您需要像这样引用模板中的静态文件:
<link rel="stylesheet" href="{{ url_for('static', filename='style.css') }}">
并确保将样式表放在项目的static
目录中。您还可以使用以下方式配置包含静态资产的目录:
app = Flask(__name__, static_folder="static_dir")