2015-01-23 2 views
2

Я пытаюсь создать «Многоразовое приложение». Я написал несколько моделей баз данных, а затем скопировал/вставлял папку (которая должна быть моим многоразовым приложением) в проект, в котором я хочу его использовать. Затем я добавил имя папки в 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'] 
+0

Нет ничего плохого в ваших южных командах. Правильно ли это миграция? Он содержит код для создания ожидаемых таблиц? –

+0

Я предполагаю, что ваше приложение называется тестом? Также вы используете что-то старше django 1.7? вы не будете использовать Юг после обновления до Django 1.7. У меня лично не было опыта с настройками команды = settings_local. Я обычно просто набираю ... python manage.py schemamigration test --initial then python manage.py migrate test –

+0

@marksweb Я обновил свой вопрос с переносом, и он выглядит как правильный – psychok7

ответ

0

Я генерируемая миграции и установкой приложения в проекте без проблем с MySQL Db.

Я ничего не изменил, но исправил ошибку импорта в вашей форме.

Ваша форма наследует BaseInlineFormSet, которую вы пытались импортировать с django.forms, но ее необходимо импортировать из;

from django.forms.models import BaseInlineFormSet

Я застегнул приложение, как это работает в моем проекте; https://www.dropbox.com/s/tqyi9su942rsp1u/ubiwhere_games.zip?dl=0

+0

разве вам не нужно запускать миграцию ?? можете ли вы писать в таблицы многоразовых приложений без проблем? – psychok7

+0

Да, все в порядке. Я добавил вопрос викторины. –

+0

вы создали миграцию из собственного права PROJECT? после добавления моего к установленным приложениям, которые я предполагаю? – psychok7

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