【发布时间】:2014-02-17 15:27:30
【问题描述】:
我想创建一个函数,它会返回名称包含一些文本的应用程序。
假设我们有以下模型:
class Application(models.Model):
name = models.CharField(max_lenght=100)
Example values: "T2 AAA", "T2 BBB", "FSA KK" etc.
现在我想写一个函数,如果这个函数的属性是 AAA,它应该返回给我应用程序 T2 AAA:
def getApplication(request, title):
titleVars = title.split(' ')
applications = Application.objects.filter(name__in=titleVars)
老实说,我不知道该怎么做,我认为我应该使用icontains,但我不知道它如何应用于数组titleVars。
示例执行:
getApplication(request, 'Some text whatever T2 AAA XXX/K')
提前致谢
【问题讨论】:
-
name__in 不起作用?
-
也许使用Q()。
-
name_in不起作用,因为我们正在检查“T2 AAA”是否在数组 ["T2", "AAA"] 中。 @Alex,但我应该如何使用它? -
提示 - 我认为您正在寻找类似搜索。
标签: python django django-models django-queryset