Как мне сделать запрос, где он фильтрует все, что начинается с числа в Django? - PullRequest
4 голосов
/ 22 сентября 2011

У меня есть модель под названием Книга с полем заголовка.

class Book(models.Model):
    title = models.CharField(null = False,blank=False)

Теперь мне нужен фильтр, чтобы получить все книги с названиями, начинающимися с цифры.

Это работает, но как мне расширить набор запросов?

b = Book.objects.filter(title__startswith = 1).order_by('title')

Это не работает

b = b + Book.objects.filter(title__startswith = 2).order_by('title')

или это

b.extend(Book.objects.filter(title__startswith = 2).order_by('title'))

1 Ответ

7 голосов
/ 22 сентября 2011

Вы можете использовать регулярное выражение в качестве параметра запроса :

Book.objects.filter(title__regex=r'\d')
...