2009-05-23 3 views
2

私はサウスを動かそうとしています - それは私のPCでうまくいきましたが、私は自分のウェブホストにそれを配備しようとしています。Djangoはsettings.pyのINSTALLED_APPSへの変更を受け取りません

今のところ、INSTALLED_APPSから項目を追加/削除する変更は、syncdbまたはdiffsettingsで取り上げられていないようです。 INSTALLED_APPSのリストにsouthを追加しましたが、syncdbを実行すると必要なテーブルが作成されていません。私が他の設定を変更した場合、それらは取得されますが、動作しないINSTALLED_APPSのようです。

私はmanage.py shellで取得シェルから

from south.db import db 

を実行する場合、私は、任意のインポートエラーを得ることはありませんので、私はそれがsouthがどこに問題はないと思います。私はsyncdbを実行すると、他のすべてのアプリケーション(Django標準のもの以外)を削除しようとしましたが、それらのテーブルは作成されます。

もし私がINSTALLED_APPSを完全に削除したとしても、manage.py diffsettingsを実行するとINSTALLED_APPSの古いリストが得られます。

私が間違っていたことは何ですか?

おかげで、

ドム

+0

他の誰もが**南**が何であるか知っているのだろうか? – muhuk

+0

私はどちらでもありません – vikingosegundo

+1

南はDjangoでマイグレーションを使用できるアプリです - http://south.aeracode.org/ –

答えて

2

答えは、結局のところ、私はバカだということです。私はこれをしたい:

settings.pyで:

... 
INSTALLED_APPS = (
    ... 
) 
... 

from localsettings import * 

... 
INSTALLED_APPS = (
    ... 
) 
... 
localsettings.pyで私は settings.pyから localsettings.pyを作成したのだ、プロジェクトの現在の場所にのみ関連のものを(含むようにデータベース設定のように)、そして INSTALLED_APPSセクションを削除するのを忘れた。

このような愚かなことをすることに対する謝罪。

+1

おっと!私はそれが理由だと思う、管理コマンド "移行"は不明であった。インストールされたアプリケーションタプルにCoz southが見つかりませんでした。 – simplyharsh

3

アプリケーションの移行、syncdbの実行文句を言わない仕事を記述する場合。 あなたは南を使用して、マイグレーションの下にフックされたアプリケーションのための

manage.py migrate 

syncdbの実行文句を言わない作業を使用する必要があります。これらのアプリケーションモデルの変更は、南の移行履歴に応じてのみ認識されます。

South Migration Docs

+0

を参照してください。南はインストールされているアプリではないので、だから私は得る:未知のコマンド: 'マイグレーション'。 –

+0

お試しいただきありがとうございます - + 1ed –

関連する問題