【问题标题】:django, runserver_plus - admin media files served from wrong pathdjango,runserver_plus - 从错误路径提供的管理媒体文件
【发布时间】:2010-12-30 18:56:03
【问题描述】:

下面的配置在我的远程主机上运行良好(相同的目录结构,相同的 django),所有管理媒体都正常提供

设置

MEDIA_ROOT = '%s/static/' % FS_ROOT
STATIC_DOC_ROOT = '%s/static/' % FS_ROOT
MEDIA_URL = '/static/'
ADMIN_MEDIA_PREFIX = '%smedia/' % MEDIA_URL

网址

(r'^admin/', include(admin.site.urls)),
(r'^static/(?P<path>.*)$', 'django.views.static.serve',
        {'document_root': '%s/static' % FS_ROOT }),
(r'^media/(?P<path>.*)$', 'django.views.static.serve',
        {'document_root': '%s/media' % FS_ROOT }),

django 1.2.0 @ ubuntu 9.10, http://127.0.0.1:8084/ 通过 runserver_plus

管理媒体文件存储在我的项目根目录中的 /static/media/ 下,每个静态文件/目录都存储在 /static/ 下。所有静态都很好,只有管理媒体是从默认 django 的管理媒体文件中获取的。我忘记了什么,为什么它只影响我的本地主机上的项目?我尝试过以各种方式在 url 中使用 /static/media/ 路径,但仍然没有。

【问题讨论】:

    标签: python django file django-admin media


    【解决方案1】:

    有两种解决方案:

    1. 您可以按照this answer 中的建议在 ADMIN_MEDIA_PREFIX 中设置主机名。
    2. 或者您可以使用 django documentation 中所述的 --adminmedia 参数启动开发服务器。

    【讨论】:

    • 酷,它奏效了。是否有一些背景,我的意思是为什么我不必在我的 isp 上指定主机?
    • 文档说:“通常,开发服务器会神奇地从 Django 源代码树中提供这些文件”。应该是方便吧。
    猜你喜欢
    • 1970-01-01
    • 2010-12-21
    • 1970-01-01
    • 1970-01-01
    • 2010-11-08
    • 1970-01-01
    • 2021-01-17
    • 2010-09-29
    • 1970-01-01
    相关资源
    最近更新 更多