无法让Django渲染Bootstrap

时间:2015-05-16 17:07:25

标签: python django twitter-bootstrap nginx gunicorn

我对这个有点难过。也许有人可以告诉我我忘了做什么。这是我项目的结构。

└── django_project
├── django_project
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   ├── wsgi.py
├── joe_develops
│   ├── admin.py
│   ├── __init__.py
│   ├── models.py
│   ├── tests.py
│   ├── views.py
├── manage.py
├── static
│   ├── about.html
│   ├── admin
│   ├── contact.html
│   ├── css
│   ├── fonts
│   ├── img
│   ├── index.html
│   ├── js
│   ├── less
│   ├── LICENSE
│   ├── mail
│   ├── post.html
│   ├── README.md
│   └── startbootstrap-clean-blog-1.0.3
└── templates
    ├── base.html
    └── index.html

Bootstrap代码保存在静态文件夹中。我的设置看起来像这样。

STATIC_ROOT = '/home/django/django_project/static/'
STATIC_URL = '/static/'
STATICFILES_DIRS = (
    "/home/django/django_project/static",
)

在我的模板中,我以下列方式调用静态数据。

{% load staticfiles %} 
...

<!-- Bootstrap Core CSS -->
<link href="{% static '/css/bootstrap.min.css' %}" rel="stylesheet">

<!-- Custom CSS -->
<link href="{% static '/css/clean-blog.min.css' %}" rel="stylesheet">

我正在使用Django 1.6数字海洋堆栈。它配有Nginx和Gunicorn。我运行了collectstatic命令,我的文件似乎已被正确复制。

如果有人能够解释为什么我没有看到我在HTML中呈现的格式,我会非常感激。

谢谢!

编辑: 这是我的nginx.conf文件。

user www-data;
worker_processes 4;
pid /run/nginx.pid;

events {
        worker_connections 768;
        # multi_accept on;
}

http {

        ##
        # Basic Settings
        ##

        sendfile on;
        tcp_nopush on;
        tcp_nodelay on;
        keepalive_timeout 65;
        types_hash_max_size 2048;
        # server_tokens off;

        # server_names_hash_bucket_size 64;
        # server_name_in_redirect off;

        include /etc/nginx/mime.types;
        default_type application/octet-stream;

        ##
        # Logging Settings
        ##

        access_log /var/log/nginx/access.log;
        error_log /var/log/nginx/error.log;

        ##
        # Gzip Settings
        ##

        gzip on;
        gzip_disable "msie6";

        # gzip_vary on;
        # gzip_proxied any;
        # gzip_comp_level 6;
        # gzip_buffers 16 8k;
        # gzip_http_version 1.1;
        # gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

        ##
        # nginx-naxsi config
        ##
        # Uncomment it if you installed nginx-naxsi
        ##

        #include /etc/nginx/naxsi_core.rules;

        ##
        # nginx-passenger config
        ##
        # Uncomment it if you installed nginx-passenger
        ##

        #passenger_root /usr;
        #passenger_ruby /usr/bin/ruby;

        ##
        # Virtual Host Configs
        ##

        include /etc/nginx/conf.d/*.conf;
        include /etc/nginx/sites-enabled/*;
}

1 个答案:

答案 0 :(得分:0)

对于任何好奇的人来说,这是我在django模板中调用静态文件的方式的错误。

例如,在以下调用中,字符串开头的正斜杠导致文件无法正确链接。 {%static&#39; / css / path / file&#39; %}应为{%static&#39; css / path / file&#39; %}

还有其他静态链接我忽略并忽略了提供正确的模板标记。

非常感谢!