2014-10-16 3 views
0

У меня возникли проблемы с применением миграций с моим приложением в моем образце проекта 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' 
+0

Не уверен, что это отличная идея назвать приложение «модели». В любом случае, это приложение включено в INSTALLED_APPS? –

+0

Да, он включен в установленные приложения. – timsworth

ответ

0

Вы не имеете фактического models.py файл в этом приложении, поэтому Django не знает, чтобы рассматривать его как один. Теперь это разрешено в Django 1.7, но вам все равно нужен подкласс AppConfig, см. the documentation.

+0

Не повезло с этим. Такая же проблема сохраняется даже при повторной миграции, а затем при попытке применить их. Я обновляю свой вопрос с помощью нового кода. – timsworth

Смежные вопросы