model中 查询对象条件中,字段名称使用变量查询

发布时间 2023-04-11 00:04:38作者: BillBie
1.存在代码如下
query = Q()
        for key, value in search_info.items():
            query &= Q(key=value)
all_objects = UserAdmin.objects.filter(query)
    

  会直接报错,model:UserAdmin 不存在 key字段,以为着 key识别为字段了,而不是变量

2.解决方案:

        query = Q()
        for key, value in search_info.items():
            query &= Q(**{f'{key}': value})
        all_objects = UserAdmin.objects.filter(query).exclude(status=-1)