擅长:python、mysql、java
<p>我知道这是一段时间前提出的问题,但刚刚解决了一个项目中的类似问题,所以在这里发布它以帮助其他人解决这个问题</p>
<pre><code>full_search = django_filters.CharFilter(method='search_by_full_search', label='Recherche') # change label field to reflect what the filter name should be
class Meta:
model = myModel
fields = ['full_search', ]
def search_by_full_search(self, qs, name, value):
for term in value.split():
qs = qs.filter(Q(serial__icontains=term) | Q(id__icontains=term) |
Q(name__icontains=term))
return qs
</code></pre>
<p><a href="https://i.stack.imgur.com/V4iCv.png" rel="noreferrer"><img src="https://i.stack.imgur.com/V4iCv.png" alt="This is how the filter will appear in the browseable API"/></a></p>