我在做一个简单的过滤器-
在过滤器.py在
class TblserversFilter(django_filters.FilterSet):
name = django_filters.CharFilter(name="servername", lookup_type="exact")
class Meta:
model = Tblservers
fields = ['servername']
如果可能的话,我想做的是让两个查找类型与字段关联。具体来说,我需要exact
和{
name=serverabc
将是精确搜索,name~abc
将是模糊搜索。在
您可以做一个method_filter,然后用不同的符号为过滤器查询添加前缀,以便在客户端使用精确的和icontains以及其他过滤器。在
既然代码胜过千言万语:
编辑:
在django过滤器1.0}'s ^{} argument 中。因此,为v1.0重写的解决方案如下(未测试):
^{pr2}$MethodFilter
was replaced with ^{首先,我为无耻的图书馆自行插拔道歉。在
在某种程度上,我试图在django过滤器中做一些类似的事情,但是解决方案比预期的要复杂得多。最后,我创建了自己的库来用Django进行过滤,它本机支持您正在寻找的功能-django-url-filter。其API与django过滤器非常相似:
请注意,URL看起来有点不同:
^{pr2}$此外,您还需要手动调用筛选器集以筛选查询集:
URL参数的语法与Django-ORM非常相似。 您可以查看文档以获取更多示例。希望它能有用。在
相关问题 更多 >
编程相关推荐