【问题标题】:how to combine icontains filter so it searches from one field and another at the same time如何组合 icontains 过滤器,使其同时从一个字段和另一个字段进行搜索
【发布时间】:2019-07-26 13:16:11
【问题描述】:
def search(request):
    queryset_list = Listing.objects.order_by('-list_date').filter(is_published=True)

    if 'keywords' in request.GET:
        keywords = request.GET['keywords']
        if keywords:
            queryset_list = queryset_list.filter(description__icontains=keywords)
        if keywords:
            queryset_list = queryset_list.filter(realtor__name__icontains=keywords)

我希望能够同时搜索 2 件事。例如,如果描述包含“大”并且realtor__name 不是我仍然希望看到与realtor__name 相同的对象,即使描述没有它我想得到它。 谢谢

【问题讨论】:

    标签: python django filtering


    【解决方案1】:

    看来您需要or 运算符

    例如:

    from django.db.models import Q
    
    
    if keywords:
        queryset_list = queryset_list.filter(Q(description__icontains=keywords) |
                                             Q(realtor__name__icontains=keywords))
    

    【讨论】:

    • 如果解决了您的问题,请接受 ans(tick symbol)。谢谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-12-02
    • 1970-01-01
    • 2020-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多