Django: как заставить South создавать таблицы для сторонних приложений, добавленных в INSTALL_APPS?

Я пытаюсь использовать django-image-cropper (Ссылка) в моем проекте. Я добавил его в INSTALL_APPS в settings.py и успешно разрешил. Приложению для работы требуется несколько таблиц базы данных, поэтому мне нужно их создать. Поскольку я использую South, мне нужно создавать таблицы с помощью South вместо использования syncdb. Мой вопрос заключается в том, как запустить "./manage.py schemamigration", пока обрезка не находится в каталоге моего проекта, а в каталоге "dist-apps" Python.


person tamakisquare    schedule 16.05.2011    source источник
comment
Аналогичный вопрос был задан другим пользователем некоторое время назад (Здесь). Но на него не ответили.   -  person tamakisquare    schedule 16.05.2011


Ответы (1)


Просто беги:

python manage.py schemamigration django-image-cropper --initial

и ты уходишь.

Замените django-image-cropper тем, что вызывается фактическим приложением (как определено в INSTALLED_APPS).

Затем вы просто используете стандартную команду миграции, чтобы добавить таблицы в базу данных.

person Cromulent    schedule 16.05.2011
comment
Спасибо Саймон. Именно то, что мне нужно. Просто быстрый побочный вопрос. Лучше использовать SOUTH_MIGRATION_MODULES (Ссылка ). Я решил использовать его, но просто любопытно, что вы думаете. Ваше здоровье. - person tamakisquare; 16.05.2011
comment
@ahmoo Это, безусловно, немного упростило бы работу сторонних приложений. Для приложений, которые вы написали сами для своих собственных проектов Django, я склонен думать, что они должны храниться в самом приложении, чтобы упростить использование приложения с другими проектами в будущем, если вы того пожелаете, но это сводится к личное предпочтение. - person Cromulent; 16.05.2011
comment
Спасибо. Я согласен с тем, что вы сказали. - person tamakisquare; 17.05.2011