Django Sites Framework: исходное местоположение для переноса данных
До Django 1.7, при использованииDjango Sites Framework можно / должно определить исходные данные, используяНачальные матчи.
MyProject / светильники / initial_data.json[
{
"pk": 1,
"model": "sites.site",
"fields": {
"domain": "domain1",
"name": "name1"
}
},
{
"pk": 2,
"model": "sites.site",
"fields": {
"domain": "domain2",
"name": "name2"
}
},
{
"pk": 3,
"model": "sites.site",
"fields": {
"domain": "domain3",
"name": "name3"
}
}
]
Поскольку это глобальная настройка проекта, я добавил папку «fixtures» в корневой каталог проекта и добавил ее в FIXTURE_DIRS.
# Used to search fixture files directories.
# Fixture files are files that provide initial data to be
# inserted in the database. (>python manage.py loaddata)
FIXTURE_DIRS = [
os.path.join(PROJECT_ROOT, "fixtures"),
]
Сейчас я использую Django 1.7, и рекомендуется использоватьмиграции, Цитирование документации Django:
Чтобы установить правильное имя и домен для своего проекта, вы можете использовать миграцию данных.
Проблема вМиграции зависят от приложения:
python manage.py makemigrations --empty yourappname
Итак, каков рекомендуемый подход для добавления информации о сайте в мой проект с использованием миграции данных? Где должна жить эта миграция?
Бегpython manage.py makemigrations --empty sites
создает миграцию в папке сторонних приложений, поэтому мы этого не хотим.
Не должно быть возможно определить MIGRATION_DIRS, поскольку FIXTURE_DIRS существует для initial_data?
я нашелMIGRATION_MODULES в документации по настройке, но проблема все еще остается, это зависит от приложения.