将mt设置更改为DEBUG = False后发生错误

时间:2015-08-15 16:44:42

标签: python django

我已经安装了grapelli管理主题,我还为我的模板使用了各种javascript文件。

一切运行正常,在我完成所有各种测试后,我决定尝试在设置文件上设置DEBUG = False

在我遇到404个问题后,我立即发现了各种文件以及我自己的一些文件。

为什么会发生这种情况,我开始怀疑我必须在我的应用程序模板中添加所有grapelli(安装了pip,位于Python27上)。

在使用各种外部模块的Django应用程序上准备生产的过程是什么?

修改

由于这些与我的静态文件有关,因此很可能我应该包含我的静态文件设置

    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    STATIC_ROOT = os.path.join(BASE_DIR, 'static')
    STATIC_URL = "/static/"

    STATICFILES_FINDERS = (
        'django.contrib.staticfiles.finders.FileSystemFinder',
        'django.contrib.staticfiles.finders.AppDirectoriesFinder',
    #    'django.contrib.staticfiles.finders.DefaultStorageFinder',
    )

    TEMPLATE_LOADERS = (
        'django.template.loaders.filesystem.Loader',
        'django.template.loaders.app_directories.Loader',
    #     'django.template.loaders.eggs.Loader',
    )

2 个答案:

答案 0 :(得分:2)

我认为你需要运行

python manage.py collectstatic

并设置静态文件的设置。 post collectstatic run你实际上可以在STATIC ROOT目录中看到grapelli文件夹。请阅读django docs以获取更多详细信息。

确保您尚未添加

static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

条件DEBUG == True下的网址。

答案 1 :(得分:0)

查看settings.py中的ALLOWED_HOSTS选项。您只需为您的网站指定允许的主机,如:

ALLOWED_HOSTS=['localhost']

或最简单但最不安全的选项:

ALLOWED_HOSTS=['*']