Как начать проект Django CMS - PullRequest
       11

Как начать проект Django CMS

3 голосов
/ 14 декабря 2010

Я решил взглянуть на 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 ]

7 голосов
/ 14 декабря 2010

django-cms использует Юг для миграции баз данных. Модели, обрабатываемые South, не синхронизируются с базой данных с использованием syncdb. Вы должны использовать manage.py migrate.

Поскольку у вас нет таблиц и данных из django-cms для миграции, более быстрым решением будет этот процесс:

  • комментарий 'south' в вашем INSTALLED_APPS
  • run manage.py syncdb (это создаст все таблицы из django-cms)
  • включите юг в вашем INSTALLED_APPS
  • пробег manage.py migrate --fake

При следующем обновлении django-cms вы можете запустить manage.py migrate, чтобы обновить таблицы базы данных.

1 голос
/ 14 декабря 2010

Вы положили 'cms' в INSTALLED_APPS в settings.py?Кроме того, для Django-CMS необходимо также установить menus, publisher и mptt, а также некоторое промежуточное программное обеспечение. Это приятно читать документацию !

0 голосов
/ 14 декабря 2010

Как правило, если таблицы не создаются, в самом приложении могут быть некоторые ошибки: попробуйте запустить оболочку Django и импортировать модель из приложения:

python manage.py shell

>>> from csm import models

и проверьте, есть ли обратная связь.

Надеюсь, это поможет.

...