Python Django:如何使用Django中的缩写进行过滤?

Python Django:如何使用Django中的缩写进行过滤?,python,django,Python,Django,我在做一个Django项目。有一个名为University的模型,它存储大学名称和其他详细信息。我有一个搜索视图,我应该用全名或缩写搜索大学。例如,如果有一所名为“工程技术大学”的大学,我应该能够用“UET”搜索它 以下是我的搜索视图: def search(request): search = request.GET["search"] universities = University.objects.filter(Q(name=search)) con

我在做一个Django项目。有一个名为University的模型,它存储大学名称和其他详细信息。我有一个搜索视图,我应该用全名或缩写搜索大学。例如,如果有一所名为“工程技术大学”的大学,我应该能够用“UET”搜索它

以下是我的搜索视图:

def search(request):
   search = request.GET["search"]
   universities = University.objects.filter(Q(name=search))
   context = {"universities": universities}
   return render(request, "company/search.html", context)

我认为,在这种情况下,你最好在你的模型中添加一个缩写字段(你可能会根据名称自动填写)。是否可以在添加新大学时自动添加它??我的意思是不询问用户。@AzmatAli您不需要询问用户缩写(尽管这应该更好,因为不是每个人都以相同的方式缩写),您可以执行
clean_data
,从表单中获取uni的名称,获取每个单词的第一个字母并保存到缩写字段(类似于获取当前用户并保存).我认为在这种情况下,你最好在你的模型中添加一个缩写字段(你可能会根据名称自动填写)。是否可以在添加新大学时自动添加它??我的意思是不询问用户。@AzmatAli您不需要询问用户缩写(即使这应该更好,因为不是每个人都以相同的方式缩写),您可以执行
清理_data
并从表单中获取uni的名称,获取每个单词的第一个字母并保存到缩写字段(类似于获取当前用户并保存)。