gpt4 book ai didi

django - Order_By:Django Q对象顺序?

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

我正在使用operator.or_并将Query()对象传递给它。 Query()对象包含3个查询,即

  • 的名字
  • 的描述
  • 按标题

  • 当我获得输出时,结果顺序不正确?像我想先按名称,然后描述,然后标题?

    这是示例代码
    def search(self, search_terms, filters, category=False, vendor=False):
    terms = [term.strip() for term in search_terms.split()]
    q_objects = []
    if terms:
    for term in terms:
    q_objects.append(Q(name__icontains=search_terms))
    q_objects.append(Q(description__icontains=search_terms))
    q_objects.append(Q(title__icontains=search_terms))
    qs = self.get_query_set()
    if len(q_objects) > 1:
    return qs.filter(reduce(operator.or_, q_objects))
    else:
    return qs

    那么,有人可以帮助它先按名称搜索顺序,然后按描述搜索,然后标题吗?

    提前致谢 !

    最佳答案

    排序是由 QuerySet.order_by 完成的,因此除了过滤查询集外,还要执行以下操作:

    qs = qs.order_by('name', 'description', 'title')

    关于django - Order_By:Django Q对象顺序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33000473/

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