【发布时间】:2026-01-16 04:20:03
【问题描述】:
我想进行自定义搜索,接受用“,”分隔的关键字,就像这个例子
我想得到分隔在两列 [name, status] 中的结果,status 有两个值结果“存在”或“不存在”,如何使用 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 代码,没有用逗号分隔
【问题讨论】:
-
如果我的回答解决了你的问题,请确认。谢谢!
标签: python django django-models django-admin