我正在尝试让regex使用其余API与Django视图一起使用。该API似乎运行良好,但是我无法使用正则表达式来使其执行搜索。我的设置中包含后端过滤器。
'DEFAULT_FILTER_BACKENDS': (
'rest_framework_datatables.filters.DatatablesFilterBackend',
'django_filters.rest_framework.DjangoFilterBackend',
'rest_framework.filters.OrderingFilter',
'rest_framework.filters.SearchFilter',
),
示例视图。
queryset = Server.objects.all().order_by('hostname')
serializer_class = ServerSerializer
filterset_fields = (
'hostname',
'region',
'system_model',
)
search_fields = (
'hostname',
)
我尝试将$添加到filterset中的主机名,但是出现错误,没有字段匹配。它似乎确实将$作为正则表达式读取。不确定是否仅在SEARCH字段中有效。过滤器字段和搜索字段之间仍然有些混淆。本质上,我正在尝试使其能够执行类似/api/servers/?hostname=.name.&system_model=.hp的搜索。基本上允许针对正则表达式的搜索过滤器字段(如果有意义)。