簡體   English   中英

Django 2.2.4 無法提供我的 static 文件

[英]Django 2.2.4 unable to serve my static files

在我的應用程序中,我無法提供 static 文件,如圖像和 js。

看起來一切都是正確的,但我仍然無法弄清楚為什么它沒有加載。

我在stackoverflow中嘗試了幾個選項,沒有一個對我有用。

設置.py

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

STATIC_URL = '/static/'

我的項目結構

mydjangonginx
    |-mydjango_app
         | -urls.py
         | -views.py
         | -...
    |-mydjangonginx
         | -urls.py
         | -settings.py
         | -...
    |-static
         | -images
              | -login.jpg
         | -js
              | -my.js

mydjango_app/urls.py

from django.urls import path

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

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

mydjangonginx/urls.py

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
        path('admin/', admin.site.urls),
        path('myapp/', include('mydjango_app.urls')),
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

登錄.html

<html>
    {% load static %}
    login
    <script src="{% static 'js/my.js' %}"></script>
    <img src="{% static 'images/login.jpg' %}" />
</html>

js和圖像都沒有加載

有人可以幫忙嗎

static 文件夾應該在同一文件夾中的manage.py旁邊(如果您沒有更改它,這是BASE_DIR )。

'django.contrib.staticfiles'在你的INSTALLED_APPS中嗎? 您正在使用{% static 'folder/some.file' %}模板標簽來提供 static 文件嗎?

另請注意,在DEBUG模式下運行時,不需要將靜態文件添加到 urlpatterns。

編輯:它必須是STATICFILES_DIRS而不是STATICFILES_DIR

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM