У меня есть модель Django под названием Author
, с полем под названием name
, который не раскололся на LastName/ПгвЬЫате:Django: поиск по первым буквам отдельных слов в фразе?
class Author(models.Model):
name = models.CharField(max_length=200, unique=True)
К примеру, у меня есть запись Автор с именем «Дональда Кнута» ,
Теперь я хотел бы запросить по имени, используя istartswith в начале каждого слова в поле name
.
Так что я хотел бы иметь возможность запросить 'Kn
' и получить 'Donald Knuth
' назад.
Что-то вроде:
authors = Author.objects.filter(name__word__istartswith="Kn")
Возможно ли это в Django?
Спасибо! Это именно то, что мне нужно, за исключением того, что «(^ | \ s)% s» совпадает только в начале имени. Любая идея, как я могу заставить ее соответствовать началу любого слова в имени? Я предполагаю, что «\ b» должно быть задействовано где-то ... – AP257 2010-12-08 18:46:02