Flask应用程序正在从一条奇怪的路径获取资产(css,js)



我有一个简单的烧瓶应用程序,它有一个奇怪的行为。

传递路由名称似乎会使浏览器从另一个文件夹中获取资源。

我的html

<link href="./static/assets/main.css" rel="stylesheet">
<a href="/work/22" title="" class="btn btn-default">Reserva já</a>

我的烧瓶路线

@app.route('/work/<int:store_id>')
def stores(store_id):
mycursor.execute("SELECT * FROM stores WHERE store_id = %s" % store_id)
result = mycursor.fetchone()
return render_template("work.html")

控制台显示浏览器现在正在此处查找css文件:

http://localhost:5000/work/static/assets/main.css

我不明白为什么它把";工作;在这里的小路上。我是烧瓶的新手,也许我不太了解路由是如何工作的。我通过了";工作/22";因为我想传递两条信息,这是一种不好的做法吗?

感谢

这是一个相对路径:

<link href="./static/assets/main.css" rel="stylesheet">

它是相对于当前位置,即/work/store_id。这与文件系统中的工作方式相同,因此/work将是当前目录,因此相对路径解析为/work/static/assets/main.css

如果您希望路径为/static/assets/main.css,请删除前导点:

<link href="/static/assets/main.css" rel="stylesheet">