Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在烧瓶中提交表单后CSS丢失(404)_Python_Html_Css_Forms_Flask - Fatal编程技术网

Python 在烧瓶中提交表单后CSS丢失(404)

Python 在烧瓶中提交表单后CSS丢失(404),python,html,css,forms,flask,Python,Html,Css,Forms,Flask,我在HTML文件中有一个简单的表单(基本上是jinja2模板)。表单标签上写着,这是我处理表单提交的地方 这是代码的路由部分 @app.route(“/”) @app.route('/login/',方法=['GET','POST']) def login(): 错误=无 如果request.method==“POST”: 如果需要,请填写表格['username']!=用户名或请求。表单['password']!=PWD: 错误='这些不是正确的凭据,是吗?请使用其他内容重试' 其他: 返回f

我在HTML文件中有一个简单的
表单
(基本上是
jinja2
模板)。表单标签上写着
,这是我处理表单提交的地方

这是代码的路由部分

@app.route(“/”)
@app.route('/login/',方法=['GET','POST'])
def login():
错误=无
如果request.method==“POST”:
如果需要,请填写表格['username']!=用户名或请求。表单['password']!=PWD:
错误='这些不是正确的凭据,是吗?请使用其他内容重试'
其他:
返回flask.redirect(flask.url_for('homepage'))
返回呈现模板('login.html',error=error)
以下是我在HTML模板中链接到CSS文件的方式:

<link rel="stylesheet" type="text/css" href="static/style.css">
我正在寻求如何让404消失的帮助。此外,我在这里想要的只是一个简单的登录页面(如果需要,我可以更改路由以达到我的目的),它不会影响CSS文件的可用性

如果你需要更多的信息,请告诉我


感谢您的帮助或建议:)

{url\u for('static',filename='static/styles.css')}
设置为文件的正确路径的唯一原因是
static\u folder
变量实际上设置为根文件夹路径,而不是根文件夹路径+静态,这很奇怪,除非你故意这样设置

您可以尝试将
static\u文件夹
值打印到控制台,并查看它返回的内容


不过,您似乎在使用Windows,所以可能有一些我不知道的特性。

您如何在HTML模板中导入CSS文件?您应该使用url_for('static',filename='path/to/css/file')作为样式表的href,以便它始终引用文件的正确url。@guimauve我忘了添加那行HTML文本。实际上我已经尝试过这样做了{{url\u for('static',filename='static/style.css')}},但是没有任何区别。我在提交表格时仍然得到404。我在问题中包含了更多细节。删除文件名字段中的“static”,除非您的css文件实际位于/static/static/。事实上,问题已经解决,但我必须使用
filename='static/style.css'
而不是
filename='style.css'
,即使css文件位于
\static
目录中。这不是很奇怪吗?考虑到我在web上看到的每个示例都没有在文件名中使用“static”,我应该担心吗?您可以添加您的建议作为解决问题的答案。否则我会回答我自己的问题:)@guimauve你是对的。在尝试一些随机的事情时,我显式地设置了变量
static\u folder=''
(我在问题中提到,实际上我试过这么做),但在测试后,我没有将其改回正常。无论如何,我感谢你的帮助:)
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='static/style.css') }}">