Джанго: Пытаюсь организовать матчи Джанго - PullRequest
3 голосов
/ 05 октября 2011

Я создал несколько моделей, для которых хотел бы предоставить исходные данные.Проблема в том, что есть несколько моделей, и я хотел бы организовать данные.

В настоящее время у меня есть большой файл JSON: initial_data.json с данными.Я думал, что мог бы использовать некоторые комментарии, но у JSON нет комментариев!Я действительно хочу использовать json.

Итак, файл выглядит так:

[
  {
    "model": "app1.Model1",
    "pk": 1,
    "fields": {
      "nombre": "A convenir con el vendedor"
    }
  },
//many more
  {
    "model": "app2.Model1",
    "pk": 1,
    "fields": {
      "nombre": "A convenir con el vendedor"
    }
  },
//many more
  {
    "model": "app2.Model1",
    "pk": 1,
    "fields": {
      "nombre": "A convenir con el vendedor"
    }
  },
]

Итак, я подумал, что могу организовать их в разные файлы, и с помощью какого-то начального скрипта загрузить их.Идея не в том, чтобы выпускать несколько python manage.py loaddata thisApp.Model Но тогда было бы трудно отделить файлы, которые не предназначены для загрузки в начальный момент времени.

Вот файлы в качестве примера:

+app1
   +fixtures
      model1.json
      model2.json
+app2
   +fixtures
      model1.json
      model2.json
+app3
   +fixtures
      model1.json
      model2.json

У вас есть идеи, как сохранить простоту?

Ответы [ 2 ]

0 голосов
/ 05 октября 2011

Назовите файлы, которые содержат начальные данные «initial_data.json» - syncdb будет загружать только те.Вы можете загрузить остальные вручную с помощью manage.py loaddata.

https://docs.djangoproject.com/en/dev/howto/initial-data/#automatically-loading-initial-data-fixtures

0 голосов
/ 05 октября 2011

как вы сказали, создайте несколько файлов и напишите скрипт, который объединит их в initial_data.json и вызовет необходимую команду django.core.management.это то, что я делаю.

...