Django;无法加载静态文件

时间:2018-08-18 06:15:15

标签: python django

我一直在使用Django,但是我的静态文件无法加载。 我的项目结构是这样的

blog/
|___apps/
|     |__static/
|     |     |__css/
|     |     |__js/
|     |
|     |__templates/
|     |     |__base.html
|     |     |__feeds/
|     |
|     |__feeds/
|
|___blog/
       settings.py

我的settings.py就是这样

APPS_DIR = os.path.join(BASE_DIR, 'apps')
STATIC_URL = '/static/'
STATICFILES_DIRS = (
os.path.join(APPS_DIR, 'static'),
   )

奇怪的是仅适用于index.html,即使html文件位于templates/feeds/中也可以加载静态文件。

我的urls.py中可能有错误,因为错误显示为

  

未找到:/feeds/static/css/styles.css

似乎Django试图在static/feeds/内查找静态文件。

urls.py就是这样

urlpatterns = [
path('', views.index, name='index'),

path('feeds/', include([
    path('list', views.list_entry, name='list_entry'),

如果可能,我不想在static内创建应用程序名称文件夹。我该如何解决?

1 个答案:

答案 0 :(得分:2)

from django.conf import settings
from django.conf.urls.static import static

尝试将它们导入项目URL中,然后添加以下内容:

urlpatterns = [
  path('', views.index, name='index')
  ....
  ] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)