所以我在本地主机127.0.0.1:8000上运行了一个Django API服务器。
这是我的models.py:
的布局models.py
class Book(models.Model):
title = models.CharField(max_length=100)
publisher = models.ForeignKey(Publisher)
publication_date = models.DateField()
def __str__(self):
return u'%s' % (self.title)
class Publisher(models.Model):
name = models.CharField(max_length=50)
address = models.CharField(max_length=50)
city = models.CharField(max_length=50)
website= models.URLField()
def __str__(self):
return u'%s' % (self.name)
我在 views.py 文件中运行如下查询:
book_list = Book.objects.all().values('title','publisher','publication_date')
当运行和处理此查询时,该值似乎返回其原始表中的发布者索引,而不是链接到它的名称(例如,如果它是第3个发布者)发布者表,然后将为发布者返回值3。
有没有办法获得每个值链接到的发布者的实际名称?
非常感谢!
答案 0 :(得分:5)
使用字段查找来访问嵌入对象属性:https://docs.djangoproject.com/en/2.0/topics/db/queries/#field-lookups
此处使用book_list = Book.objects.all().values('title','publisher__name','publication_date')