Dans Django j'ai mis à jour mon git avec pull de repo. Et quand je cours python3 manage.py collectstatic
il jette "myproject" la base de données n'existe pas. Vraiment je n'ai pas de base de données myproject car en production j'ai seulement une base de données prod_project. Mais, en quelque sorte django tente de charger myproject base de données base.py plutôt que de charger de prod.pyParamètres du projet Django pour la production et le développement
# base.py
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'myproject',
'USER': 'admin',
'PASSWORD': '*****',
'ATOMIC_REQUESTS': True,
},
}
# prod.py
from .base import *
DEBUG = False
TEMPLATE_DEBUG = DEBUG
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'prod_myproject',
'USER': 'admin',
'PASSWORD': '',
},
}
try:
from .local import *
except ImportError:
pass
# local.py is empty file
mon projet est dans les applications/projet/dossier prod:
/.git
etc/
apps/
static/
myproject/
settings/
base.py
prod.py.
beta.py
wsgy.py
manage.py
Si vous ouvrez manage.py et observez le code à l'intérieur, vous pouvez lui indiquer les paramètres à utiliser. Vous pouvez manipuler cela pour utiliser le bon fichier par environnement. – Neelik
Thx vient de répondre. Dans manage.py, il est écrit comme si __name__ == "__main__": os.environ.setdefault ("DJANGO_SETTINGS_MODULE", "myproject.settings") –