在我的应用程序中,我无法提供静态文件,如图像和js。
看起来一切都是正确的,但我仍然不能弄清楚为什么它不能加载。
我在stackoverflow中尝试了几个选项,但没有一个对我有效。
Settings.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.jsmydjango_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)login.html
<html>
{% load static %}
login
<script src="{% static 'js/my.js' %}"></script>
<img src="{% static 'images/login.jpg' %}" />
</html>js和图像都没有加载。
有人能帮上忙吗?
发布于 2019-10-16 01:51:06
静态文件夹应该在同一文件夹中的manage.py旁边(如果您没有更改它,则该文件夹为BASE_DIR )。
你的INSTALLED_APPS里有'django.contrib.staticfiles'吗?并且您正在使用{% static 'folder/some.file' %}模板标记来提供静态文件?
还要注意,在DEBUG模式下运行时,不需要向the模式添加静态文件。
编辑:它必须是STATICFILES_DIRS而不是STATICFILES_DIR
https://stackoverflow.com/questions/58394365
复制相似问题