1

我想再次开始使用 Django(我不是 Python/Django 方面的专家,但我可以让好东西发挥作用)。我曾经使用过 Mezzanine 只是为了看看它是如何工作的。“mezzanine-project myproject”命令就像一个魅力,因为我有一个快速运行的不错的小应用程序。因此,今天我下载了新的 Mezzanine 1.3 以及 Django 1.4.3 及其所有依赖项(pillow、pytz、html5lib 等),并尝试创建另一个项目,以便我现在可以出于个人目的以更一致的方式对其进行处理。

令我惊讶的是,当我运行服务器时,我收到了很多指向丢失 /static/ 文件的 404 错误。此外,在创建数据库(使用manage.py createdb命令)之后,唯一创建的是静态文件夹,其中仅包含 Mezzanine 附带的预定义图库的图片。此外,也没有登录或注册按钮。

我尝试以相同的结果对所有 Python 及其站点包进行全新安装。我还尝试将包含丢失文件的文件夹从 /site-packages/mezzanine 文件夹复制/粘贴到我的项目中,但结果只是减少了 404 消息的数量。

我一直在对这个问题进行广泛的研究(没有运气,但可能是因为发布是最近的?),甚至试图联系 Mezzanine IRC 频道上的某个人,但没有成功。

我希望我没有错过一些愚蠢的东西。settings.py在运行命令之前,我是否必须在我的文件或特定文件中更改任何内容(请注意,我可以使用旧的夹层默认设置)manage.py createdb

作为记录:在运行之前createdb,我唯一编辑的是settings.py并更改了数据库参数以使其与我的 MySQL 服务器一起使用并注释 local_settings 配置,因为我不需要它。

一些可能有帮助的参数:

PROJECT_ROOT = os.path.dirname(os.path.abspath(__file__))

STATIC_URL = '/static/'

STATIC_ROOT = os.path.join(PROJECT_ROOT, STATIC_URL.strip("/"))

4

1 回答 1

3

默认情况下,settings.py中DEBUG设置为False,local_setting.py中DEBUG设置为True

鉴于此,如果您只是注释掉导入 local_settings.py,则 DEBUG 将为 False。

当 DEBUG 设置为 False 时,Django 的开发服务器不会提供静态文件,有关更多详细信息,请参阅 Django 文档的静态文件部分。

于 2013-01-27T05:29:57.160 回答