Flask在Python中找不到文件夹和文件



我的文件结构遵循

> code.py

> templates

....> css

....> index.html

我的烧瓶代码是

from flask import Flask, url_for
from flask import render_template
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
if __name__ == "__main__":
app.run()

我的HTML代码是

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Title</title>
<link rel="stylesheet" href="/css/style.css">
</head>
<body>
<header>
<img class="resize" src="./pictures/apptek_logo.png" alt="apptek_logo">
<nav>
<ul class="nav-links">
<li class="active"><a href="./index.html">Home</a></li>
<li><a href="./contact.html">Contact</a></li>
</ul>
<script src="https://code.jquery.com/jquery-3.5.0.js"></script>
<script type="text/javascript">
$(document).on('click', 'ul li', function(){
$(this).addClass('active').siblings().removeClass('active')
})
</script>
</nav>
</header>
</body>
</html>

出于某种原因,它根本没有加载CSS文件和任何其他html文件。在弗拉斯克有什么需要我做的吗?

Flask自动在项目根目录中查找CSS、JS和其他静态文件:

/static

更多详细信息请点击此处查看Flask文档。

将静态文件分离到子目录中是一种很好的做法,如下所示:

/static/css
/static/js

在您的示例中,将CSS放在以下路径:

/static/css/style.css

然后在HTML中引用:

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

如果您使用的是Jinja2模板,您可以按照文档中的描述进行操作:

{{ url_for('static', filename='style.css') }}

最新更新