Показаны сообщения с ярлыком south. Показать все сообщения
Показаны сообщения с ярлыком south. Показать все сообщения

пятница, 29 октября 2010 г.

south на сервере django

Странное название заметки, объясню.
Тезисами, потому что некогда.
1. Сделал сайтик, залил на сервачок, есть кастомные апы и плагины для Django-CMS, они создают свои таблицы
2. Захотел поменять таблицы, поставил South
3. Выполнил инит, и миграции при изменении таблиц в приложении
4. Залил измененный код на сервер
5. Удалил нулевую миграцию для апа, потому что оно создаёт в ней архитектуру для таблицы и саму таблицу
6. запустил python manage.py migrate appname

среда, 20 октября 2010 г.

Установка South(Unknown command: 'schemamigration')

Привет, бедный программист, который получил
D:\PycharmProjects\aproduct\products>python manage.py schemamigration
Unknown command: 'schemamigration'
Type 'manage.py help' for usage.
При попытке запустить комманду manage.py schemamigration из south tutorial :).
Возможный и простой вариант фикса этой проблемы: скопировать папку south из дистрибутива South в папку рядом с твоими аппами.
Более сложный, посмотреть в папку
c:\Python25\Lib\site-packages\South-0.6.1-py2.5.egg\south\management\commands
Обнаружить следующее, и понять, что чего-то не хватает, а именно schemamigration.py, как это решить думайте сами :)
convert_to_south.py
convert_to_south.pyc
migrate.py
migrate.pyc
startmigration.py
startmigration.pyc
syncdb.py
syncdb.pyc
test.py
test.pyc
testserver.py
testserver.pyc
__init__.py
__init__.pyc



А тут короче не заработала у меня даже 0.7.2 версия, хотя кто-то говорил, что нормально работает с M2M (many to many), пофиксил так, но не понял, почему заработало.
В это файле в 177 строке нужно вываливание из цикла добавить break
D:\PycharmProjects\southtest\south\db\generic.py
for sql in self.deferred_sql:
#AAAAAAAAAAAAAAAAAAAAAAA
self.execute(sql)
break