У мене виникають проблеми із завантаженням світильників Django в мою базу даних MySQL через конфлікти типів вмісту. Спочатку я спробував скинути дані лише з мого додатка, наприклад:
./manage.py dumpdata escola > fixture.json
але мені не вистачало проблем із зовнішніми ключовими словами, оскільки в моєму додатку "ескола" використовуються таблиці інших програм. Я продовжував додавати додаткові додатки, поки не дійшов до цього:
./manage.py dumpdata contenttypes auth escola > fixture.json
Тепер проблема полягає в наступному порушенні обмежень, коли я намагаюся завантажити дані в якості тестового кріплення:
IntegrityError: (1062, "Duplicate entry 'escola-t23aluno' for key 2")
Здається, проблема полягає в тому, що Джанго намагається динамічно відтворити типи контенту з різними значеннями первинного ключа, що суперечать значенню первинного ключа з кріплення. Схоже, помилка задокументована тут: http://code.djangoproject.com/ticket/7052
Проблема полягає в тому, що рекомендованим рішенням є скидання програми contenttypes, що я вже роблю !? Що дає? Якщо це має значення, у мене є деякі дозволи на власну модель, як це задокументовано: http://docs.djangoproject.com/en/dev/ref/models/options/#permissions
-e contenttypes -e auth.permission
з--natural
? Я просто спробував без--natural
варіанту, і це спрацювало. Також тут представлена документація говорить, що слід використовувати цю опцію, якщо DUMPINGauth.permission
іcontenttypes
.