无法在Django 1.9中加载style.css

时间:2018-09-21 16:38:55

标签: html css django python-2.7 django-1.9

我正在尝试在页面上加载style.css。
我添加了STATICFILES_DIRS的路径,如下所示,

STATIC_URL = '/static/'

STATICFILES_DIRS = [
os.path.join(BASE_DIR, "static"),
 ]

STATIC_ROOT = os.path.join(BASE_DIR, "static_cdn")

index.html
{% load staticfiles %}
`<link rel='stylesheet' href='{% static "css/style.css" %}' type='text/css'>`

我运行collectstatic并收集了style.css

当我检查元素并打开style.css (http://127.0.0.1:8000/static/css/style.css)的链接时,它给我not found消息。

我尝试过硬编码到style.css的路径,但是没有运气。

我创建了另一个示例项目,并遵循相同的步骤,并成功加载了style.css。 当我检查元素并打开style.css的链接时,它显示了html代码。

我真的很无助。任何帮助都非常感谢。

修改

setting.py template settings:

TEMPLATES = [
{
    'BACKEND': 'django.template.backends.django.DjangoTemplates',
    'DIRS': [],
    'APP_DIRS': True,
    'OPTIONS': {
        'context_processors': [
            'django.template.context_processors.debug',
            'django.template.context_processors.request',
            'django.contrib.auth.context_processors.auth',
            'django.contrib.messages.context_processors.messages',
        ],
    },
},

]

目录结构:

 |myproject
  |----- MyApp/
  |---- myProject/
  |---- static/ 
  |---- static_cdn/
  |----manage.py

https://github.com/prafullarkamble/UnableToLoadStyle.css/

2 个答案:

答案 0 :(得分:1)

如果我没记错的话,collectstatic命令仅用于生产。因此收集的统计信息不会影响开发。

在您的项目结构中,style.css的路径为:

Salmon/static/Salmon/style.css

因此,您应该找到具有以下网址的文件:

http://127.0.0.1:8000/static/Salmon/style.css

应与模板中的{% static "Salmon/style.css" %}等效。

答案 1 :(得分:0)

1)从要收集静态资产的位置 选择文件夹:

STATICFILES_DIRS = [
    os.path.join(BASE_DIR, "i_will_collect_from_here"),
    ... yet another folder
]

2)选择要收集静态资产 的文件夹:

STATIC_ROOT = os.path.join(BASE_DIR, "here_my_static_will_be_collected")

3)运行python manage.py collectstatic

注意:

STATICFILES_DIRS中,您可以添加任何所需的路径,它可以是绝对路径。 collectstatic会将静电放在您的STATIC_ROOT中。

STATICFILES_DIRS = [
    '/var/www/assets/bootstrap/'
    ...
]