Форум сайта python.su
Добрый вечер!
Пытаюсь изучать Python + Django с помощью видео уроков. И сталкнулся с такой проблемой как миграция south. На этапе когда помечаю инициализацию fake, вылетает список ошибок.
Ниже описаны все действия. Пользовался гуглом, то что пишут на англоязычных форумах удалить папку и выполнить миграцию с различными ключами не помагает, возможно я что то не допонял. Подскажи с чем конкретно связан спиок ошибок?
setting.py
INSTALLED_APPS = ( 'pizza', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'south', 'django_extensions', )
(pizza)ad@ad-VirtualBox:~/workspace/pizza$ python manage.py syncdb Syncing... Synced: > pizza > django.contrib.admin > django.contrib.auth > django.contrib.contenttypes > django.contrib.sessions > django.contrib.messages > django.contrib.staticfiles > south Not synced (use migrations): - django_extensions (use ./manage.py migrate to migrate these)
(pizza)ad@ad-VirtualBox:~/workspace/pizza$ python manage.py schemamigration pizza initial --initial Creating migrations directory at '/home/ad/workspace/pizza/pizza/migrations'... Creating __init__.py in '/home/ad/workspace/pizza/pizza/migrations'... /home/ad/.virtualenvs/pizza/local/lib/python2.7/site-packages/south/utils/__init__.py:38: DeprecationWarning: Options.module_name has been deprecated in favor of model_name value = getattr(value, part) + Added model pizza.Pizza + Added M2M table for components on pizza.Pizza + Added model pizza.Component Created 0001_initial.py. You can now apply this migration with: ./manage.py migrate pizza
(pizza)ad@ad-VirtualBox:~/workspace/pizza$ python manage.py syncdb Syncing... Synced: > django.contrib.admin > django.contrib.auth > django.contrib.contenttypes > django.contrib.sessions > django.contrib.messages > django.contrib.staticfiles > south Not synced (use migrations): - pizza - django_extensions (use ./manage.py migrate to migrate these)
(pizza)ad@ad-VirtualBox:~/workspace/pizza$ python manage.py migrate pizza 0001 --fake Traceback (most recent call last): File "manage.py", line 10, in <module> execute_from_command_line(sys.argv) File "/home/ad/workspace/django/django/core/management/__init__.py", line 397, in execute_from_command_line utility.execute() File "/home/ad/workspace/django/django/core/management/__init__.py", line 390, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/home/ad/workspace/django/django/core/management/base.py", line 242, in run_from_argv self.execute(*args, **options.__dict__) File "/home/ad/workspace/django/django/core/management/base.py", line 289, in execute output = self.handle(*args, **options) File "/home/ad/.virtualenvs/pizza/local/lib/python2.7/site-packages/south/management/commands/migrate.py", line 111, in handle ignore_ghosts = ignore_ghosts, File "/home/ad/.virtualenvs/pizza/local/lib/python2.7/site-packages/south/migration/__init__.py", line 200, in migrate_app applied_all = check_migration_histories(applied_all, delete_ghosts, ignore_ghosts) File "/home/ad/.virtualenvs/pizza/local/lib/python2.7/site-packages/south/migration/__init__.py", line 79, in check_migration_histories for h in histories: File "/home/ad/workspace/django/django/db/models/query.py", line 139, in __iter__ self._fetch_all() File "/home/ad/workspace/django/django/db/models/query.py", line 971, in _fetch_all self._result_cache = list(self.iterator()) File "/home/ad/workspace/django/django/db/models/query.py", line 263, in iterator for row in compiler.results_iter(): File "/home/ad/workspace/django/django/db/models/sql/compiler.py", line 687, in results_iter for rows in self.execute_sql(MULTI): File "/home/ad/workspace/django/django/db/models/sql/compiler.py", line 763, in execute_sql cursor.execute(sql, params) File "/home/ad/workspace/django/django/db/backends/util.py", line 46, in execute return self.cursor.execute(sql, params) File "/home/ad/workspace/django/django/db/utils.py", line 94, in __exit__ six.reraise(dj_exc_type, dj_exc_value, traceback) File "/home/ad/workspace/django/django/db/backends/util.py", line 46, in execute return self.cursor.execute(sql, params) File "/home/ad/workspace/django/django/db/backends/sqlite3/base.py", line 476, in execute return Database.Cursor.execute(self, query, params) django.db.utils.OperationalError: no such table: south_migrationhistory
Офлайн
Разбирайтесь почему на этапе syncdb не создаются таблицы для приложения south, миграции можно не создавать, проблему легко проверять просто смотря в базу и наблюдая создалась ли таблица south_migrationhistory или нет.
Офлайн
Щас кстати Эндрю Гудвин запилил в current уже нативно миграции из лучшего кода south'а.
Только незнаю у кого как, у меня есть проблемка при новой makemigrations. Ошибка RegexValidator вываливается, а тяму понять в чем проблема пока не хватает.
Офлайн
Здравствуйте!
Выполните сперва
python manage.py syncdb –all
, чтобы создать все необходимые таблицы. В том числе необходимые самому south.
Спасибо.
Офлайн