gpt4 book ai didi

django - 向 Objects.filter 添加额外参数(通过 Dict)?

转载 作者:行者123 更新时间:2023-12-04 22:52:52 24 4
gpt4 key购买 nike

假设我们有一个 dvd我们要搜索的表 price=14.99rating=18 .我们可以这样做:

#Making some dictionary
dict1 = {}

#Adding some stuff
dict1['price']=14.99
dict1['rating']18

#Use dict as filter
dvd.objects.filter(**dict1)

有没有办法添加额外的参数,如:
dvd.objects.filter(title__icontains='the')

我只想为用户增加一点灵活性,因为目前他们可以选择他们想要搜索的字段并准确指定他们想要的内容。但是我想搜索部分匹配项,例如 __icontains做。我也想要 __gt , __lt .

这可能吗?

最佳答案

代替:

dict['price'] = 14.99

你可以这样做:
dict['price__gte'] = 10
dict['price__lte'] = 15

当您使用 **kwargs 时,以下内容是相同的:
Model.objects.filter(price__gte=10, price__lte=15)
# or
kwargs = {'price__gte': 10,
'price__lte': 15}
Model.objects.filter(**kwargs)

关于django - 向 Objects.filter 添加额外参数(通过 Dict)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1763495/

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