Я пытаюсь создать «Многоразовое приложение». Я написал несколько моделей баз данных, а затем скопировал/вставлял папку (которая должна быть моим многоразовым приложением) в проект, в котором я хочу его использовать. Затем я добавил имя папки в INSTALLED_APPS
в моих настройках.Django Многоразовые приложения и миграции
Тогда я использовал Юг бежать:
python manage.py schemamigration test --initial --settings=settings_local
и:
python manage.py migrate test --settings=settings_local
Когда я попытался доступа к модели этого приложения в админке я получил relation does not exist
. Я пошел в свой PostgreSQL и понял, что таблицы не были созданы с помощью этих южных команд.
Любая идея, что я делаю неправильно?
UPDATE:
Я использую Django 1.5.10
и South 0.7.5
Миграцию, которая создается при выполнении миграции schemma
class Migration(SchemaMigration):
def forwards(self, orm):
# Adding model 'Category'
db.create_table(u'test_category', (
(u'id', self.gf('django.db.models.fields.AutoField')(primary_key=True)),
('name', self.gf('django.db.models.fields.CharField')(unique=True, max_length=200)),
))
db.send_create_signal(u'test', ['Category'])
def backwards(self, orm):
# Deleting model 'Category'
db.delete_table(u'test_category')
models = {
u'test.category': {
'Meta': {'object_name': 'Category'},
u'id': ('django.db.models.fields.AutoField', [], {'primary_key': 'True'}),
'name': ('django.db.models.fields.CharField', [], {'unique': 'True', 'max_length': '200'})
}
}
complete_apps = ['test']
Нет ничего плохого в ваших южных командах. Правильно ли это миграция? Он содержит код для создания ожидаемых таблиц? –
Я предполагаю, что ваше приложение называется тестом? Также вы используете что-то старше django 1.7? вы не будете использовать Юг после обновления до Django 1.7. У меня лично не было опыта с настройками команды = settings_local. Я обычно просто набираю ... python manage.py schemamigration test --initial then python manage.py migrate test –
@marksweb Я обновил свой вопрос с переносом, и он выглядит как правильный – psychok7