Flask教程:样式表不起作用

时间:2012-04-29 02:02:30

标签: python html css flask

我有flaskr folder的确切副本。我运行了应用程序。一切都按预期工作,但有一件事。我的博客应用程序没有样式,即使我在文件夹名称static中有一个'style.css'文件。

在模板文件夹的.html文件中,作者似乎忘记了引号。所以我添加了引号,这些文件现在看起来像这样(layout.htmllogout.htmlshow_entries.html。但它没有改变任何东西,仍然看到一个没有样式的博客。有谁知道为什么样式不适用?


编辑: 我重新启动了应用程序。我突然得到OperationalError: no such table exists: entries(见here)。昨天我在博客中填写了1个条目,但它工作正常并且正确显示了除样式之外的条目。现在我第一次运行应用程序时突然间出现了这个全新的错误。我再次重新复制所有文件,就像在作者的文件夹中一样,以确保它与作者完全相同的flaskr文件夹。我犯了同样的错误。

有人可以复制author's flaskr folder并在flaskr目录中运行python flaskr.py以查看它是否适用于他们?所以至少我知道源是正确的。

3 个答案:

答案 0 :(得分:1)

编辑: 我忘了跑: >>> from flaskr import init_db; init_db()(参见自述文件)。

我不知道为什么风格上次不适用,但现在确实如此。

答案 1 :(得分:0)

样式表可能未加载

使用像firebug这样的工具来确保样式表实际上正在加载

答案 2 :(得分:0)

我遇到了同样的问题,下面的解决方案为我工作。 如果您转到__init__.py文件并更改

def create_app(test_config=None):
    app = Flask(__name__, instance_relative_config=True) 

def create_app(test_config=None):
    app = Flask(__name__, instance_relative_config=True, static_url_path="", static_folder="static")

应该可以。我的猜测是,如果没有其他参数,默认目录将无法正确设置。这会将静态url路径设置为其中带有__init__.py的文件夹,并将静态文件夹设置为同一目录中名为“ static”的文件夹。如果您将文件夹放在其他位置或使用其他名称,则需要更改这两个参数。