我有以下代码:
class Model_ItemName(models.Model):
item_name = models.CharField(max_length = 50) # e.g. "Power Ranger"
class Model_Cart(models.Model):
item_name = models.ForeignKey(Model_ItemName)
Model_Cart.objects.select_related("item_name").values("item_name")[0]["item_name"] # <---- Expect to return "Power Ranger"
我的目标是从Model_ItemName中检索“item_name”的值(比如“Power Ranger”)。
我指的是this post的解决方案,但我的现有代码返回了“item_name”的id号。我在这里缺少什么?
答案 0 :(得分:2)
您可以使用item_name__item_name
作为字段名称(详情请查看文档this part):
Model_Cart.objects.values("item_name__item_name")[0]["item_name__item_name"]
注意在这种情况下你不需要select_related,values()
Django将使用sql join查询item_name__item_name
一个查询。