示例1:
第一个示例在last_name
and first_name
field.
indexes = [
models.Index(fields=['last_name', 'first_name',]),
]
如果您同时搜索姓氏和名字,或者单独搜索姓氏,这将很有用(因为last_name
是索引中的第一个字段)。
MyModel.objects.filter(last_name=last_name, first_name=first_name)
MyModel.objects.filter(last_name=last_name)
然而,它对于搜索没有用。first_name
本身(因为first_name
不是索引中的第一个字段)。
MyModel.objects.filter(first_name=first_name) # not useful
示例2:
第二个示例为以下内容创建索引first_name
字段和一个单独的索引last_name
field.
indexes = [
models.Index(fields=['first_name',]),
models.Index(fields=['last_name',]),
]
如果您根据代码中的名字或姓氏进行查找,这将很有用
MyModel.objects.filter(first_name=search)
MyModel.objects.filter(last_name=search)