4

我在 SO 上看到了这个问题:Django crispy-forms cannot find CSS,并遵循了已接受答案中的所有建议,即:

  • 'crispy-forms' 列在 INSTALLED_APPS 下
  • 我没有运行生产服务器,所以我不确定是否应用了 collectstatic 选项(尽管我确实运行了它)

另外:我正在尝试使用引导模板包,所以我将 CRISPY_TEMPLATE_PACK = 'bootstrap' 添加到我的 settings.py 文件中。

当我从https://gist.github.com/maraujop/1838193加载示例创建的表单时,页面上没有 CSS。有什么建议吗?谢谢!

编辑: 我想我仍然缺少一些东西。我下载了 Bootstrap,将其解压缩到我的应用程序内的静态目录中,即:

my_app/
    static/
        css/
        js/
        img/

我创建了一个base.html:

{% load staticfiles %}
<!DOCTYPE html>
<html>
  <head>
    <title>Bootstrap 101 Template</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <!-- Bootstrap -->
    <link href="{{ STATIC_URL }}css/bootstrap.min.css" rel="stylesheet" media="screen">
  </head>
  <body>
    <div id="content">
        {% block content %}{% endblock %}
    </div>
  </body>
</html>

在我的模板中,我有:

{% extends 'base.html' %}
{% load crispy_forms_tags %}
{% block content %}
   {% crispy form %}
{% endblock %}

当我尝试加载我的页面时,表单会加载(哇),但仍然没有 CSS。当我查看页面的来源时,我可以看到以下内容:

<link href="css/bootstrap.min.css" rel="stylesheet" media="screen">

但 Django 似乎找不到该文件。

4

1 回答 1

6

您需要自己包含 css/js。所以...下载 bootstrap,将文件放在您的静态文件目录中,在您的base.html模板中包含一个指向 bootstrap css/js 文件的链接,然后您将能够看到正确的格式。

于 2013-07-03T18:22:42.317 回答