2015-04-22 7 views
5

Używam niestandardowego modelu użytkownika, który dziedziczy z klasy AbstractBaseUser. Kiedy próbuję migracji po komendzie makemigrationsZmiana kolejności, w jakiej aplikacja migruje aplikację Django podczas testowania.

django.db.utils.ProgrammingError: relation "custom_user_users" does not exist

Dzieje się tak, ponieważ Django stara się migrować inne aplikacje pierwszym, który zależy od modelu użytkownika niestandardowego. Nawet próbowałem zmienić kolejność aplikacji, która zawiera niestandardowy model użytkownika w INSTALLED_APP, ale bez powodzenia.

Wiem, że mogę wymusić pełną migrację modelu custom_user, a następnie pozwolić Django na migrację wszystkich innych modeli. To rozwiązuje problem, ale podczas uruchamiania testu uruchamia migrację w kolejności, którą decyduje Django.

Jak zmienić kolejność migracji aplikacji podczas testu? Każdy inny sposób na rozwiązanie tego problemu zależności?

Używam Django 1.8

+3

Czy spojrzał na https://docs.djangoproject.com/en/1.8/topics/migrations/#dependencies. Wydaje mi się, że omawiam ten dokładny problem. – niconoe

+0

Sprawdziłem link. I myślę, że to był problem. Ale jak mam to rozwiązać? Czy istnieje sposób, w jaki mogę zdecydować o kolejności migracji aplikacji podczas polecenia testu? – Jimit

+0

Następująca odpowiedź pomogła mi (wyłączyć migracje w teście) http://stackoverflow.com/questions/25161425/disable-migrations-when-running-unit-tests-in-django-1-7 –

Odpowiedz

1

Umieść swoje aplikacje przed Django aplikacje w INSTALLED_APP w settings.py pliku

+0

Próbowałem już tego. Zobacz opis pytania. – Jimit