20

我对 django 和 django-cms 应用程序非常陌生。

我已经一步一步地遵循了教程:(来自官方网站)在一台新机器上,并且一切都与教程完全一样,但我仍然无法到达任何地方。

我到了设置过程的最后一步,一切都失败了,当我运行时:

python manage.py syncdb --all

我收到以下错误:

CommandError: One or more models did not validate:
cms.page: 'site' has a relation with model <class 'django.contrib.sites.models.Site'>,     which has either not been installed or is abstract.
cms.globalpagepermission: 'sites' has an m2m relation with model <class 'django.contrib.sites.models.Site'>, which has either not been installed or is abstract.

为了澄清这发生在步骤 1.3.2.1。教程中的全新安装

1.3.2.1。全新安装

Run:

python manage.py syncdb --all
python manage.py migrate --fake

这些命令都不起作用,都导致上述错误。

我不知道如何解决这个问题,甚至不知道是什么导致了我的问题,我在 google 和 stackoverflow 上花了很短的时间寻找没有结果的答案,我无法指出问题可能让我的事情变得更难。

任何帮助深表感谢。

我的代码与教程完全相同,这就是我没有发布任何内容的原因。

4

1 回答 1

41

我猜你正在使用新的 Django 1.6。默认情况下,该sites应用程序不再包含在您的项目中。似乎django-cms取决于它。

您可以轻松地将其添加到文件中启用的应用程序列表中settings.py,在INSTALLED_APPS列表中:

INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',    # <----- here!
    ...
于 2013-11-17T03:16:23.253 回答