場景:
有一個表中的某一列憋他,你需要獲取到這一列的所有值迟几,你怎么操作诗良?
解決辦法:
有一個model為:Event
方式一:
獲取內(nèi)容:
Event.objects.values('title')
輸出內(nèi)容:
<QuerySet [{'title': '測試feed'}, {'title': '今天'}, {'title': '第三個日程測試'}, {'title': '第四個日程測試'}, {'title': '第五個測試日程'}]>
方式一獲取到的是一個QuerySet台猴,內(nèi)容是鍵值對構(gòu)成的舌狗,鍵為表的列名,值為對應(yīng)的每個值扔水。
方式二:
獲取內(nèi)容:
Event.objects.values_list('title')
輸出內(nèi)容:
<QuerySet [('測試feed',), ('今天',), ('第三個日程測試',), ('第四個日程測試',), ('第五個測試日程',)]>
方式二獲取到的也是一個QuerySet痛侍,但是內(nèi)容是元祖形式的查詢列的值。
但是我們想要的是這一列的值呀,這怎么是一個QuerySet主届,而且還包含了列名赵哲,或者是被包含在了元祖中?
高階用法
如果只想獲取一個只有列表值的List君丁,操作方式如下:
獲取內(nèi)容:
list(Event.objects.values_list('title',flat=True))
輸出內(nèi)容:
['測試feed', '今天', '第三個日程測試', '第四個日程測試', '第五個測試日程']