如何启动django cms项目

时间:2010-12-14 10:39:20

标签: python django django-cms

我决定去看看django-cms。在查看文档之后,我使用

克隆了存储库
git clone https://github.com/divio/django-cms.git

然后我使用

安装它
sudo python setup.py install

我已经安装了django 1.2.3。我移动到example目录,运行syncdb,创建了以下表格:

Creating table auth_permission
Creating table auth_group_permissions
Creating table auth_group
Creating table auth_user_user_permissions
Creating table auth_user_groups
Creating table auth_user
Creating table auth_message
Creating table django_content_type
Creating table django_session
Creating table django_admin_log
Creating table django_site
Creating table sampleapp_category
Creating table sampleapp_picture
Creating table south_migrationhistory



You just installed Django's auth system, which means you don't have any superusers defined.
Would you like to create one now? (yes/no): yes...

我们可以清楚地看到没有创建cms表。在运行服务器并浏览http://localhost:8000/

时,我显然遇到了这个问题
DatabaseError: no such table: cms_page

我查看了文档并看到我满足了有关版本的要求但很明显,我做错了。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:7)

django-cms使用South进行数据库迁移。由South处理的模型不会使用syncdb同步到数据库。您必须使用manage.py migrate

由于您没有任何来自django-cms的表和数据要迁移,因此更快的解决方案是此过程:

  • 'south'
  • 中注明INSTALLED_APPS
  • 运行manage.py syncdb(这将创建来自django-cms的所有表)
  • INSTALLED_APPS
  • 中重新启用南
  • 运行manage.py migrate --fake

下次更新django-cms时,可以运行manage.py migrate来更新数据库表。

答案 1 :(得分:1)

您是否将'cms'放入INSTALLED_APPS settings.py? Django-CMS还需要安装menuspublishermptt以及一些中间件。 This is some nice to read documentation就可以了!

答案 2 :(得分:0)

通常,如果未创建表,则应用程序本身可能会出现一些错误: 尝试运行Django shell并从应用程序导入模型:

python manage.py shell

>>> from csm import models

并检查你是否得到追溯。

希望这可以提供帮助。