有沒有一種機制來映射Django的查詢集項目不觸發其evaluation?地圖(應用功能)Django的查詢集
我想知道的東西像Python map。使用函數將其應用於QuerySet的函數,但保留懶惰評估。
例如,使用模型從Django文檔example,是有什麼樣的呢? (不是真碼):
>>> Question.objects.all().map(lambda q: q.pub_date + timedelta(hours=1))
它保持懶惰的評價?
有沒有一種機制來映射Django的查詢集項目不觸發其evaluation?地圖(應用功能)Django的查詢集
我想知道的東西像Python map。使用函數將其應用於QuerySet的函數,但保留懶惰評估。
例如,使用模型從Django文檔example,是有什麼樣的呢? (不是真碼):
>>> Question.objects.all().map(lambda q: q.pub_date + timedelta(hours=1))
它保持懶惰的評價?
您可以使用values_list
得到任何你喜歡的列:
Question.objects.values_list('pub_date')
這是比什麼都可以編造自己簡單。
謝謝。但是我想知道更廣泛的東西,不限於模型領域。 –
您可以使用任何功能,比如'map'遍歷一個QuerySet,做你想要什麼。或者你可以使用字典/列表解析來創建數據結構。 – tayfun
當然,但是從我的理解,這將引發評估,對不對? –
你能否解釋在這一點更多的細節你的問題 – iklinac
它們映射到什麼? –
請檢查編輯的問題。謝謝。 –