Mam problem z ładowaniem urządzeń Django do mojej bazy danych MySQL z powodu konfliktów contenttypes. Najpierw próbowałem zrzucić dane tylko z mojej aplikacji w następujący sposób:
./manage.py dumpdata escola > fixture.json
ale ciągle pojawiały się problemy z brakującymi kluczami obcymi, ponieważ moja aplikacja „escola” używa tabel z innych aplikacji. Dodawałem kolejne aplikacje, aż doszedłem do tego:
./manage.py dumpdata contenttypes auth escola > fixture.json
Teraz problemem jest następujące naruszenie ograniczenia, gdy próbuję załadować dane jako urządzenie testowe:
IntegrityError: (1062, "Duplicate entry 'escola-t23aluno' for key 2")
Wygląda na to, że problem polega na tym, że Django próbuje dynamicznie odtworzyć typy zawartości z różnymi wartościami klucza podstawowego, które kolidują z wartościami klucza podstawowego z urządzenia. Wygląda na to, że jest to to samo, co błąd udokumentowany tutaj: http://code.djangoproject.com/ticket/7052
Problem w tym, że zalecanym obejściem jest zrzucenie aplikacji contenttypes, którą już robię !? Co daje? Jeśli to robi różnicę, mam pewne uprawnienia do modelu niestandardowego, jak udokumentowano tutaj: http://docs.djangoproject.com/en/dev/ref/models/options/#permissions
-e contenttypes -e auth.permission
z--natural
? Po prostu próbowałem bez--natural
opcji i zadziałało. Również dokumentacja tutaj mówi , że należy użyć tej opcji, jeśli DUMPINGauth.permission
icontenttypes
.