У меня возникли проблемы с применением миграций с моим приложением в моем образце проекта django. Я последовал совету в this thread, но он все еще не работает.Никаких миграций для применения, хотя есть миграции для применения
То, что я думаю, уникально в этом примере проекта против того, что используется в приведенной выше ссылке, заключается в том, что модели хранятся в собственном приложении, в отдельных файлах в этом приложении; один файл на модель.
Я могу makemigration
хорошо, но когда я перехожу к migrate
изменениям, django говорит, что миграция не применяется, несмотря на наличие файла миграции в приложении моделей.
Ниже моя структура проекта:
| db.sqlite3
| manage.py
|
+---project
| settings.py
| urls.py
| wsgi.py
| __init__.py
|
+---main
| | admin.py
| | forms.py
| | tests.py
| | urls.py
| | views.py
| | __init__.py
| |
| +---migrations
| | __init__.py
| |
| +---static
| \---templates
| \---main
| login.html
| register.html
|
+---models
| | answer.py
| | application.py
| | apps.py
| | business.py
| | group.py
| | question.py
| | user.py
| | __init__.py
| |
| \---migrations
| 0001_initial.py
| __init__.py
|
\---templates
\---_layouts
base.html
Я в тупик, и не может найти причину, почему Джанго не может применить миграции, что он сам сделал.
Заранее спасибо.
Update:
Я добавил «apps.py» на модели «приложение» с суб-классифицироваться AppConfig как предложил Даниилу, но это дает тот же результат. Измененный код .py ниже:
apps.py:
from django.apps import AppConfig
class ModelsConfig(AppConfig):
name = 'models'
verbose_name = "Models"
INIT .py для приложения моделей:
from user import UserModel
from business import BusinessModel
from application import ApplicationModel
from group import GroupModel
from question import QuestionModel
from answer import AnswerModel
default_app_config = 'models.apps.ModelsConfig'
Не уверен, что это отличная идея назвать приложение «модели». В любом случае, это приложение включено в INSTALLED_APPS? –
Да, он включен в установленные приложения. – timsworth