gpt4 book ai didi

django - 条件 order_by 语句,Django

转载 作者:行者123 更新时间:2023-12-04 13:06:25 25 4
gpt4 key购买 nike

我想合并一个允许多个排序变量的排序功能。

我试图传递 .order_by() 一个函数,但是当我尝试包含多个字段时它一直失败。我该怎么做呢?

if request.GET.get('size_sort')=='1':
def sorts():
sort='\'bedrooms\',\'bathrooms\''
return sort
posts=Post.objects.filter(**keyword_args).order_by(sorts())

这将返回回溯:
   Invalid order_by arguments: ["'bedrooms','bathrooms'"] 

最佳答案

Django Book: Chapter 5 Models :

To order by multiple fields (where the second field is used to disambiguate ordering in cases where the first is the same), use multiple arguments:



也就是说,正确的调用是:
order_by('bedrooms', 'bathrooms')

在上下文中,与原始问题一致:
def sorts():
sort = ['bedrooms', 'bathrooms']
return sort

posts = Post.objects.filter(**keyword_args).order_by(*sorts())

快乐编码。

关于django - 条件 order_by 语句,Django,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5423293/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com