如果字符串中存在字段名,如何使用 Django 模型过滤器从我的数据库中查询对象



如何使用django查询对象,通过使用objects.filter((检查它的字段名称是否存在于字符串中。比如,如果我想使用名为"Foo"的字段名称进行过滤,如果它在字符串"Foo Bar"中。我尝试了以下行,但当然不起作用:

# name = Foo
obj.objects.filter(name__in='Foo Bar') # Empty Query list

你可以找到所有子字符串并使用in

from itertools import combinations
my_str = 'Foo Bar'
substrings = [my_str[x:y] for x, y in combinations(range(len(my_str) + 1), r = 2)]
obj.objects.filter(name__in=substrings)

最新更新