web-dev-qa-db-ja.com

Django 1.8特定の移行を実行する

In Django 1.8では、特定の移行を実行する方法があり、その移行のみが可能です。

1つのアプリだけでなく、そのアプリ移行ディレクトリ内の特定のファイル。

オリジナルに編集:

    Traceback (most recent call last):
  File "manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/home/vagrant/virtualenvs/aku/lib/python3.4/site-packages/Django/core/management/__init__.py", line 338, in execute_from_command_line
    utility.execute()
  File "/home/vagrant/virtualenvs/aku/lib/python3.4/site-packages/Django/core/management/__init__.py", line 330, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/home/vagrant/virtualenvs/aku/lib/python3.4/site-packages/Django/core/management/base.py", line 393, in run_from_argv
    self.execute(*args, **cmd_options)
  File "/home/vagrant/virtualenvs/aku/lib/python3.4/site-packages/Django/core/management/base.py", line 444, in execute
    output = self.handle(*args, **options)
  File "/home/vagrant/virtualenvs/aku/lib/python3.4/site-packages/Django/core/management/commands/migrate.py", line 146, in handle
    plan = executor.migration_plan(targets)
  File "/home/vagrant/virtualenvs/aku/lib/python3.4/site-packages/Django/db/migrations/executor.py", line 50, in migration_plan
    self.loader.graph.node_map[target].children
KeyError: ('wagtailcore', '0001_initial')

少し検索して、これを見つけました https://code.djangoproject.com/ticket/24225#no1

43
bgrantdev

特定の移行に移行するようにDjango=

./manage.py migrate myapp 0005_migration_to_run

しかし、Django=は、選択した移行まで(または元に戻る)移行every移行を実行します。

faking を前に移行することができます

./manage.py migrate --fake myapp 0004_previous_migration
./manage.py migrate myapp 0005_migration_to_run

その後、あなたが始めた移行に見せかけたいかもしれません。

99
Alasdair