Lorsque vous essayez d'utiliser loaddata sur ma machine locale (win/sqlite):Django paramètres loadData d'erreur
python django-admin.py loaddata dumpdata.json
Je reçois l'erreur suivante:
raise ImportError("Settings cannot be imported, because environment variable %s is undefined." % ENVIRONMENT_VARIABLE) ImportError: Settings cannot be imported, because environment variable DJANGO_SETTINGS_MODULE is undefined.
J'utilise l'application de djangoconfig si cela aide :
"""
Django-config settings loader.
"""
import os
CONFIG_IDENTIFIER = os.getenv("CONFIG_IDENTIFIER")
if CONFIG_IDENTIFIER is None:
CONFIG_IDENTIFIER = 'local'
# Import defaults
from config.base import *
# Import overrides
overrides = __import__(
"config." + CONFIG_IDENTIFIER,
globals(),
locals(),
["config"]
)
for attribute in dir(overrides):
if attribute.isupper():
globals()[attribute] = getattr(overrides, attribute)
projets> python manage.py loaddata dumpdata.json --settings = config.b ase
WARNING: Forced to run environment with LOCAL configuration.
Problem installing fixture 'dumpdata.json': Traceback
(most recent call last):
File "loaddata.py", line 174, in handle
obj.save(using=using)
...
File "C:\Python26\lib\site-packages\django\db\backends\sqlite3\base.py", line
234, in execute
return Database.Cursor.execute(self, query, params)
IntegrityError: columns app_label, model are not unique
Le 'IntegrityError 'On dirait que ça vient de la table des types de contenu, l'un des paquets contrib. Je parie que la base de données que vous essayez de charger contient déjà quelque chose, probablement à cause d'une charge précédente qui a échoué. Comme il semble que vous utilisez SQLite, jsut supprime le fichier de base de données, 'syncdb' si nécessaire pour créer une nouvelle base de données, puis réessayez votre chargement. –
D'accord avec @Mike DeSimone, sauf 'syncdb' va initialiser content_types avec des données afin que vous puissiez obtenir la même erreur (suivez son conseil pour voir!). Vous devrez peut-être éditer dumpdata.json pour supprimer les données pour content_types. – JCotton
Supprimé sqlite db. Avez-syncdb. Loaddata essayé = même erreur. – Eeyore