Ошибка Django 1.8: не указан фиксатор базы данных

Я использовал sqlite база данных и после применения python manage.py dumpdata Я добавил новый postgresql настройки базы данных в settings.py

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.postgresql_psycopg2',
    'NAME': 'music',                      
    'USER': '**',
    'PASSWORD': '****',
    'HOST': '127.0.0.1',
    'PORT': '5432',
    }
  }

Но когда я пытаюсь загрузить данные в новый postgresql База данных я получаю следующую ошибку

C:\Users\Saket\musicalguru>python manage.py loaddata
usage: manage.py loaddata [-h] [--version] [-v {0,1,2,3}]
                      [--settings SETTINGS] [--pythonpath PYTHONPATH]
                      [--traceback] [--no-color] [--database DATABASE]
                      [--app APP_LABEL] [--ignorenonexistent]
                      fixture [fixture ...]
manage.py loaddata: error: No database fixture specified. Please provide the  path of at least one fixture in the command line.

Не могу понять, в чем ошибка. У меня уже есть данные в моем sqlite база данных, поэтому мне нужны новые данные в postgresql База данных тоже.

2 ответа

Решение

Можете ли вы показать, как вы сделали дамп данных? Если вы посмотрите на dumpdata документы, вы увидите, что это:

Выводит на стандартный вывод все данные в базе данных, связанные с именованным приложением (ями).

А также:

По умолчанию, dumpdata отформатирует вывод в формате JSON

Теперь, если вы посмотрите на свою ошибку, вы увидите, что вам не хватает базы данных. loaddata docs рассказывает, что такое прибор и где Django будет искать приборы:

Фиксатор - это набор файлов, которые содержат сериализованное содержимое базы данных. Каждое устройство имеет уникальное имя, и файлы, которые составляют устройство, могут быть распределены по нескольким каталогам в нескольких приложениях.

Джанго будет искать в трех местах:

  1. в fixtures каталог каждого установленного приложения
  2. В любом каталоге, указанном в FIXTURE_DIRS установка
  3. В буквальном пути, названном приспособлением

Итак, файл, в который вы сохраняете свои данные, может быть использован:

./manage.py dumpdata ... > mydata.json
./manage.py loaddata mydata.json

Вы должны сказать loaddata какой файл загрузить, если его нет в приложении fixtures каталог:

python manage.py loaddata file/path/of/dumbdata.json

Либо вы перемещаете свои сброшенные данные в fixtures каталог приложения или указать файл вручную, как я уже говорил выше. Читать ходить loaddata Команда здесь.

Другие вопросы по тегам