From f6753e40050c44b31bb284076d2aab61abdd974e Mon Sep 17 00:00:00 2001 From: Donald Buczek Date: Fri, 14 Aug 2020 22:50:08 +0200 Subject: [PATCH] Contact: Add method for snippet chooser search Add method chooser_search to the model which can be used by the snippet chooser. This method does a case blind "contains"-search agains "first_name last_name". --- mpicms/personal/models.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mpicms/personal/models.py b/mpicms/personal/models.py index 5d969fb..f8c0d3a 100644 --- a/mpicms/personal/models.py +++ b/mpicms/personal/models.py @@ -1,6 +1,8 @@ from django.db import models from django.utils.translation import gettext_lazy as _ from django.core.validators import MaxValueValidator +from django.db.models import CharField, Value as V +from django.db.models.functions import Concat from wagtail.core.models import Orderable from wagtail.admin.edit_handlers import FieldPanel, MultiFieldPanel, InlinePanel @@ -146,6 +148,8 @@ def __str__(self): else: return self.email + def chooser_search(query): + return Contact.objects.annotate(display_name=Concat("first_name", V(" "), "last_name")).filter(display_name__icontains=query) class Meta: # noqa verbose_name = 'Contact'