/ / DjangoでManyToManyFieldを追加するときのエラー - python、django、django-models、django-orm、django-evolution

DjangoでManyToManyFieldを追加する際のエラー - python、django、django-models、django-orm、django-evolution

さて、私は、最近追加されたエラーに関する質問を投稿しました。 ManyToManyField

モデルは以下のものです

class MagicType(models.Model):

name = models.CharField(max_length=155)
parent = models.ForeignKey("self", null=True, blank=True)

class Spell(models.Model):

name = models.CharField(max_length=250, db_index=True)
magic_words = models.CharField(max_length=250, db_index=True)
magic_types = models.ManyToManyField(MagicType)

これは、移行時に発生するエラーです ジャンゴ - 進化

AttributeError: "ManyToManyField" object has no attribute "_get_m2m_column_name"

だから、2つのモデルでそれを指定せずにManyToManyFieldを手動で設定する方法はありますか?このようなモデルで言う

class SpellToMagicType(models.Model):
magic_type = models.ForeignKey(MagicType)
spell = models.ForeignKey(Spell)

しかし、私はこの中でこれをどのように使うのか DjangoのORM

ヘルプは非常に高く評価されるだろう。ありがとう!

回答:

回答№1の場合は3

同じこと、私はあなたの別の質問に答えます ManyToManyFieldを追加できない理由は何ですか? 基本的にこのエラーは、モデル内のコードが(ORM)が変更されましたが、データベースが変更されておらず、django-evolutionはデータベースの変更に関する多くの問題を修正しませんでした。http://code.google.com/p/django-command-extensions/)とsqldiffコマンドが、私の別の答えを見て


回答№2の場合は1

これは多かれ少なかれ私がやった方法です。実際、私はなぜこれがうまくいかなかったのか困惑し、きれいなDjango 1.1環境で自分自身で試してみました。

このモデルを自分でクリーンな環境に置いてみて、あなたが得たものを見てみましたか?