我正在尝试通过烧瓶运行网站以进行分配。 Flask有效且模板有效,问题在于,当我将本地文件放入html页面代码中的块内容中时,本地文件不出现。我也尝试过将图像放置在模板html代码中,但这没有用。简而言之,我想更改背景以及在通过Flask运行但未显示的html页面上显示其他图像。
截至目前,我尝试将图像包含在html模板的开头(无效)。还尝试将其放入体内(无效)。两次我都在w3学校中使用了示例,并确保路径是正确的。当图像位于同一文件夹,静态文件夹或桌面上时,我尝试了一下,但没有用。似乎唯一有效的方法是使用图片的url,如果我在互联网中断时显示此图片,将无济于事。
//////flask code//////
from flask import Flask, render_template, url_for
app = Flask(__name__)
@app.route("/")
@app.route("/home")
def home():
return render_template('home.html')
@app.route("/new")
def about():
return render_template('new.html')
@app.route("/exp")
def about():
return render_template('exp.html')
if __name__ == '__main__':
app.run(debug=True)
/////html example code(no they are not in the same file)/////
<html>
<head>
</head>
<body>
<style type="text/css">
// Unrelated Styling for Demo Purposes
@import url('https://fonts.googleapis.com/css?family=Lato');
html {
&, &:after, &:before {
box-sizing: border-box;
}
}
html, body {
height: 100%;
width: 100%;
font-size: 16px;
}
body {
background-image: url("test1.jpg");
background-repeat: no-repeat;
background-size: cover;
font-family: 'Lato', sans-serif;
}
</style>
我要做的就是让烧瓶运行时弹出我的文件夹中的本地文件。如果我单击html文件,它们会显示出来,但是在通过flask运行时它们不会显示出来。请帮忙。
答案 0 :(得分:1)
确保static
文件夹位于应用程序的根目录下,并将图像放入其中。
然后,将图像URL更改为:
url('/static/test1.jpg')
您也可以let Flask generate the static URL,/static/test1.jpg
替换为
{{ url_for('static', filename='test1.jpg') }}
如果您要更改静态文件夹的位置,则无需手动更改URL。