またはこれを行うことはできますか?別のフィールドのデフォルトとしてモデルのIDを使用する
これは必ずしも最終的な結果モデルではありませんが(これはちょっとした論理的なものではありません)、私がしたいと思っているこのモデルを作成する際には、親参照として独自のIDを使用します。
この時点で、IDのAutoFieldは問題ありません。私が何を探しているのかを容易にするためにそれを変更する必要がない限り。
当然のことながら、私は以下の移行「自己」エラーが発生しますが、それは私の例を説明するのに役立ちます:
class Person(models.Model):
dtob = models.DateTimeField(blank=False, verbose_name="Date of birth", default=datetime.now)
dtod = models.DateTimeField(blank=False, verbose_name="Date of death", default=datetime.now)
creationdate = models.DateTimeField(blank=False, verbose_name="Creation date", default=datetime.now)
BLOOD_TYPE_CHOICES=(
('O+', 'O Positive'),
('O-', 'O Negative'),
('A+', 'A Positive'),
('A-', 'A Negative'),
('B+', 'B Positive'),
('B-', 'B Negative'),
('AB+', 'AB Positive'),
('AB-', 'AB Negative'),
)
bloodtype = models.CharField(blank=False, verbose_name="Blood type", max_length=3, choices=BLOOD_TYPE_CHOICES, default='O+')
parentA = models.IntegerField(blank=False, verbose_name="Parent A", default=self.id)
parentB = models.IntegerFiled(blank=False, verbose_name="Parent B", default=self.id)
すべての助けとコメント感謝します。
これを行うにはsave()をオーバーライドできます。保存したら、親IDをself.idで更新して、再度保存することができます。 – Sayok88