我想进行自定义搜索,以接受分隔的关键字,','像这个例子
我希望得到的结果分为两列[名称,状态],状态有两个值结果"存在"或"不存在",如何使用django和python
from django.contrib.admin.views.main import ChangeList
class UnsplitableUnicode(unicode):
"An object that behaves like a unicode string but cannot be split()"
def split(self, *args, **kwargs):
return [self]
class MultiWordSearchChangeList(ChangeList):
"Changelist that allows searches to contain spaces"
def get_query_set(self, request):
self.query = UnsplitableUnicode(self.query)
return super(MultiWordSearchChangeList, self).get_query_set(request)
class TbldomainsPageAdmin(admin.ModelAdmin):
list_display = ('name','status',)
#raw_id_fields = ('name',)
search_fields = ['name', ]
def get_changelist(self, request, **kwargs):
return MultiWordSearchChangeList
我在models.py中为搜索词编写了这个python代码而没有用逗号分割
答案 0 :(得分:0)
在Django文档中非常清楚地表明search_fileds被空格分割。 因此,按照这个例子,目前无法搜索first_name正好是john winston'的所有记录。 (包含空格)。
您可以查看here。
也许您必须修改Django的源代码才能自定义搜索表单。