我在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'
除非你在related_name
中定义OneToOneField
,否则Django将使用小写的模型名来访问相关对象。所以,note.notelabel
应该工作。