ForeignKeyを使用して相互に関連付けられている2つのモデルがあり、related_nameが使用されています。これが例です。
class Student(models.Model):
name = models.CharField(max_length=255)
birthday = models.DateField(blank=True)
class Class(models.Model):
name = models.CharField(max_length=255)
student = models.ForeignKey(Student,
related_name='classes',
null=True)
def __unicode__(self):
return self.name
たとえば、クラス名にアクセスしたいと思います。
これは私が試したものです。
john = Student.objects.get(username = 'john')
print john.classes.name
何も印刷されません。
しかし、私が試してみるとjohn.classes
0x109911410でdjango.db.models.fields.related.RelatedManagerオブジェクトを取得します。これは、それらが関連していることを示しています。しかし、クラス名を取得したいと思います。
私は何か間違ったことをしていますか?related_nameを使用してクラスの名前にアクセスするにはどうすればよいですか?いくつかのガイダンスが必要です。