【发布时间】:2016-11-14 11:04:04
【问题描述】:
我的 Django 应用程序的管理面板中的图标有问题。 我的根媒体文件夹中有所有文件:
'/files/dev/projects/mynewproject/media'
但在控制台中我收到 404 错误。
我的 urls.py
urlpatterns = static(settings.STATIC_URL, document_root=settings.STATIC_ROOT
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) + patterns('',
# ...
)
我的 MEDIA_ROOT:
MEDIA_ROOT = '/files/dev/projects/mynewproject/media'
终端响应:
/media/adminextra/js/jquery.js HTTP/1.1" 404 1829
【问题讨论】:
-
你确定 jquery 应该驻留在 MEDIA_ROOT 而不是 STATIC_ROOT 下吗? MEDIA 适用于用户上传的资源,而 STATIC 适用于 JS/CSS 等应用资源。
-
是的,我确定因为“adminextra”文件夹是我在管理面板中使用的文件
-
jquery.js在您的磁盘上的什么位置?settings.DEBUG的值是多少? -
文件 jquery 位于:/files/dev/projects/mynewproject/project/concerthall/media/adminextra/js settings.DEBUG = True
-
假设您的
MEDIA_URL是/media/,它会在用户端本地存储的根目录下创建一个media文件夹,并在那里搜索文件。STATIC_URL也是如此。因此,将您的 MEDIA_URL 更改为/files/dev/projects/mynewproject/media。甚至我也很难为同样的问题找到解决方案。另一个问题是。建议检查 DEBUG 日志返回的 MEDIA_ROOT 和 BASE_DIR 的路径。
标签: python django url media document-root