私はDjangoを初めて使用し、現在、ユーザーがいくつかのトピックについて意見を入力できるアプリケーションを作成しています。
すべての意見Aには、Aを支持する0個以上の意見と、Aに反論するいくつかの(0個以上の)意見がある場合があります。
このためのモデルを作成して、次のmodels.py
ようなファイルを作成しました。
from django.db import models
# Create your models here.
class Opinion(models.Model):
id = models.AutoField(primary_key=True)
contents = models.CharField(max_length=256)
source = models.CharField(max_length=256)
proArguments = models.ManyToManyField(Opinion, verbose_name="Pro arguments")
contraArguments = models.ManyToManyField(Opinion, verbose_name="Contra arguments")
を実行するpython manage sqlall
と、次のエラーが発生します。
File "D:\dev\history-site\history_site\opinions\models.py", line 4, in <module>
class Opinion(models.Model):
File "D:\dev\history-site\history_site\opinions\models.py", line 8, in Opinion
proArguments = models.ManyToManyField(Opinion, verbose_name="Pro arguments")
NameError: name 'Opinion' is not defined
このエラーを修正するにはどうすればよいですか?