私は既存のクラスモデルを持つプロジェクトを持っています
class Disability(models.Model):
child = models.ForeignKey(Child,verbose_name=_("Child"))
しかし、最近のアーキテクチャの変更により、次のように変更する必要があります
class Disability(models.Model):
child = models.ManyToManyField(Child,verbose_name=_("Child"))
この新しい変更のために..(新しいデータベース用に既存のデータベースを変更する必要があります)手動で行うよりも、データ移行が最善の方法だと思います。
私はこのオンラインドキュメントを参照しました
http://south.readthedocs.org/en/latest/commands.html#commands-datamigration
しかし、データの移行についてはほとんどありません。およびスキーマの移行についての詳細。
質問1 。スキーマの移行を行うと、その古いモデルに属する以前のデータがすべて失われます。
質問2 。私はスキーマ移行のためにトリングしていますが、これを求めています...
(rats)rats@Inspiron:~/profoundis/kenyakids$ ./manage.py schemamigration web --auto
? The field 'Disability.child' does not have a default specified, yet is NOT NULL.
? Since you are removing this field, you MUST specify a default
? value to use for existing rows. Would you like to:
? 1. Quit now, and add a default to the field in models.py
? 2. Specify a one-off value to use for existing columns now
? 3. Disable the backwards migration by raising an exception.
? Please select a choice: 1
誰でもスキーマとデータ移行の概念と違い、およびこれを個別に実現する方法を説明できますか?