1

私は Python と Django を初めて使用し、ここ数週間で最初の展開をセットアップすることができました。これは、ユーザー認証といくつかのページを備えた非常に基本的なサイトであり、今後数週間でコンテンツを埋めたいと考えています。

Google / StackOverflow / Django docs などを検索することで、これまでに遭遇したおそらく 40 以上の質問に対する答えを見つけることができましたが、今では良い答えを見つけることができないようです (おそらく私が持っていないため)。最適な検索方法がわからない): ローカル マシンで開発する場合、settings.py ファイルがリモート'HOST': 'www.mysite.com',データベースlocalhost( 'HOST': '',.py)。

コードを GitHub でホストしていて、それをサーバーにミラーリングしたいので、変更をサーバーにアップロードするたびに settings.py を手動で編集する必要がないように、これを解決する方法はありますか?

4

2 に答える 2

1

settings.pyファイルの 2 つのコピー (1 つは運用用、もう 1 つは開発用) を持つことができます。デフォルトにする必要があるものは何でも、次のように名前を付けますsettings.py

使用したいファイルのpython パスを設定DJANGO_SETTINGS_MODULEするだけです。

したがって、設定ファイルがmyproject/settings.py, myproject/settings_dev.py; その後、次のことができます。

$ DJANGO_SETTINGS_MODULE=settings_dev python manage.py shell

myprojectディレクトリから。

于 2012-08-01T18:26:27.560 に答える
0

.gitignore に入れて元の settings.py に含めることができる local_settings.py ファイルを作成できます。すべての環境依存変数 (DATABASES、DEBUG、CACHES、MEDIA_URL など) をこのファイルに入れます。

settings.py で:

try:
    from local_settings import *
except ImportError:
    pass

.gitignore で:

*/local_settings.py

gitrepo に配置される設定ファイルの横に local_settings.py.example を配置することをお勧めします。このように、新しい環境にデプロイするときはいつでも、この例をコピーして必要な行を変更するだけで済みます。

于 2012-08-02T08:09:37.740 に答える