0

私はcookiecutter-django .envデザインを使用して環境に応じて異なる設定をロードしています。ローカルで実行するには、 "local.py"設定を使用し、elact beanstalkで賢明にする必要があります。 "dev.py"をロードする必要があります。どちらも "common.py"からインポートします。python manage.py collectstaticが間違った(ローカル)設定をロードしています

dev設定でAESでサーバーを実行すると、devstatic設定ではなくローカル設定のインポートが試行されるため、collectstaticは失敗します。

EC2インスタンスはどのようにしてcollectstaticを実行し、(適切な)dev.py設定をロードできますか?

答えて

0

OK、見つけました。 manage.pyファイルには、代わりに.envファイルからの読み込みのため、ローカル設定で実行するすべてのコマンドを強制的にこの

if __name__ == '__main__': 
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'config.settings.local') 

のように見えました。

私はmanage.pyのコマンドは、私が実際に指定されているものは何でも設定を使用して実行することができます

import environ 

ROOT_DIR = environ.Path(__file__) - 1 

env = environ.Env() 
env.read_env(ROOT_DIR.file('config/settings/.env')) 

if __name__ == '__main__': 
    os.environ.setdefault('DJANGO_SETTINGS_MODULE', env('DJANGO_SETTINGS_MODULE', default='config.settings.local')) 

にそれをchangetています。

関連する問題