【问题标题】:ADMIN_MEDIA_PREFIX deprecation and using static files in Django 1.4ADMIN_MEDIA_PREFIX 弃用和在 Django 1.4 中使用静态文件
【发布时间】:2012-04-19 14:11:33
【问题描述】:

我有一个基于 django 1.3 的前端,它为来自 Amazon S3 的所有静态文件提供服务。我希望升级到 Django 1.4。似乎 Django 改变了管理静态文件的呈现方式。我有以下配置:

settings.py:我在 INSTALLED_APPS 中有应用程序 django.contrib.staticfiles(在“开发”和“产品”设置中)。 静态内容在 Amazon S3 上实时发布。

我正在我的开发机器上测试更改 (DEBUG=True),但 /admin 页面无法呈现静态文件和图标。那是因为它试图从 S3 中提取东西(因为 django.contrib.staticfiles 已安装),而不是从 dev django 文件夹中提取。有没有一种方法可以在 DEBUG = True 时强制将内容从开发文件夹中取出,而不是从 S3 中拉入?

【问题讨论】:

    标签: django django-admin django-staticfiles


    【解决方案1】:

    尝试根据DEBUG设置STATIC_URL

    if DEBUG:
        STATIC_URL = "/static/"
    else:
        STATIC_URL = "http://external.domain.com/"
    

    然后确保您已将 static files url patterns 添加到您的 url 配置中

    【讨论】:

    • 是的,我已经添加了。这适用于 1.3 但不适用于 1.4
    • 什么不适用于 1.4?静态文件的链接是否仍指向调试模式下的外部域?还是开发服务器不提供文件?如果是后者,您可以使用您的设置和 URL 配置更新您的答案,如果您犯了错误,有人可能会发现。
    猜你喜欢
    • 2012-08-08
    • 2013-02-26
    • 2012-12-15
    • 1970-01-01
    • 1970-01-01
    • 2012-04-15
    • 2019-03-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多