次のように別のオブジェクトからの値を使用しようとしています。だから私は、インパクトフィールドから選択するメンテナンスタイプの事前定義セットリストを持っています。私はこのモデルを作成しようとすると、私はエラーにdjangoモデルでは、別のオブジェクトからの値を選択肢として使用します
[[email protected] infternal]# python manage.py makemigrations maintenance
SystemCheckError: System check identified some issues:
ERRORS:
maintenance.Maintenance.Impact: (fields.E004) 'choices' must be an iterable (e.g., a list or tuple).
モデルの設定
class MaintenanceType(models.Model):
Type = models.CharField(max_length=200)
class Meta:
verbose_name = "Planned Maintenance Types"
verbose_name_plural = "Planned Maintenance Types"
class Maintenance(models.Model):
Title = models.CharField(max_length=200)
Impact = models.CharField(max_length=200, choices=MaintenanceType)
Description = models.TextField()
StartTime = models.DateTimeField
EndTime = models.DateTimeField
class Meta:
verbose_name = "Planned IT Maintenance"
verbose_name_plural = "Planned IT Maintenance"
'ForeignKey'は、おそらくここでより良い選択である:'インパクト= models.ForeignKey(MaintenanceType) '。 – Alasdair