我在Django 2.0
工作
我有一个模型Note
保存说明和两个其他模型添加颜色标签的说明。
class Note(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
title = models.CharField(max_length=250, blank=True, default='Untitled')
content = models.TextField(blank=True)
class ColorLabels(models.Model):
title = models.CharField(max_length=100, unique=True)
value = models.CharField(max_length=100)
default = models.BooleanField(default=False)
class NoteLabel(models.Model):
note = models.OneToOneField(Note, on_delete=models.CASCADE)
color_label = models.OneToOneField(ColorLabels, on_delete=models.CASCADE)
字符串
对象为Note
note = Note.objects.get(pk=1)
型
我想访问关联的ColorLabels
的title
和value
字段或NoteLabel
对象。
因为它们是一对一字段。我试过
note.note_label
note.NoteLabel
note.note_label_set
型
但所有返回的错误为
AttributeError: 'Note' object has no attribute 'note_label_set'
型
2条答案
按热度按时间mw3dktmi1#
除非你在
OneToOneField
中定义了related_name
,否则Django将使用小写的模型名称来访问相关的对象。所以,note.notelabel
应该工作。axkjgtzd2#
您可以使用
Note
对象访问NoteLabel
对象,然后使用NoteLabel
对象访问ColorLabels
的title
和value
字段,如下所示:字符串