Django,获取模型中的属性
我想从一个模型中获取某个字段的值。问题是,当我使用 filter(pk=university)
时,得到的是 id
。但是返回的结果是 [{'name': u'Icecream Chocolate'}]
。有没有办法直接获取这个名字,而不是像 [{'name': u' ... }]
这样的格式呢?
item_name = Icecream.objects.filter(pk=icecream_id).values('name')
2 个回答
1
在文档的下一部分:
item_name = Icecream.objects.filter(pk=icecream_id).values_list('name')
1
一种选择是使用 objects.get()
:
item_name = Icecream.objects.get(pk=icecream_id).name
或者,如果你还是想用 filter()
,但又不想看到带有 name
键的字典,可以使用 values_list()
并设置 flat=True
:
item_name = Icecream.objects.get(pk=icecream_id).values_list('name', flat=True)