2010-12-14 7 views
3

私はdjango-cmsを見てみることにしました。ドキュメントを見た後、私はその後、私は、私はすでにジャンゴ1.2.3がインストールされてい django cmsプロジェクトを起動するには

sudo python setup.py install 

を使用してそれをインストールし

git clone https://github.com/divio/django-cms.git 

を使用してリポジトリをクローン化しました。私はexampleディレクトリに次の表を作成したRAN 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 

を閲覧しています。どんな助けでも大歓迎です。

+0

プロジェクトの設定ファイルでアプリが有効になっていますか?私はそれが非常によく問題になると思う。 –

答えて

7

django-cmsは、データベースの移行にSouthを使用します。南によって処理されるモデルは、syncdbを使用してデータベースに同期されません。 manage.py migrateを使用する必要があります。あなたが移行するジャンゴ-CMSから任意のテーブルとデータを持っていないので、より高速なソリューションは、このプロセスになり

  • コメントアウト'south'あなたINSTALLED_APPS
  • 実行manage.py syncdbで(これが作成されます。ジャンゴ-CMSからのすべてのテーブル)
  • あなたINSTALLED_APPS
  • ランで南再有効manage.py migrate --fake

次にdjango-cmsを更新すると、manage.py migrateを実行してデータベーステーブルを更新できます。一般的に

+0

はい、私はすでに他のプロジェクトのために南を使っていたので、それに従った。私は問題はマイグレーションを偽って、後で 'migrate --all'を使わないことだと思います – booyakah

1

'cms'INSTALLED_APPSに入れましたか?settings.py? Django-CMSにはさらに、menus,publishermpttがインストールされている必要があります。それにThis is some nice to read documentation

+0

あなたの答えをありがとう、私はそのチュートリアルも行ってきました。私はこの例のsettings.pyに触れておらず、cms、menus、publisher、mpttを含んでいます。これらはすべてPythonシェルでインポートできます。 – booyakah

0

テーブルが作成されていない場合は、アプリケーション自体に多少の誤差があることができます: Djangoのシェルを実行しようとすると、アプリケーションからモデルをインポートします。

python manage.py shell 

>>> from csm import models 

、あなたがトレースバックを取得するかどうかを確認します。

これは役に立ちます。

関連する問題