Да, это описано в README
на GitHub . За занавесом TagField
- это ManyToManyField
, который указывает на модель TagModel
[GitHub] , и, таким образом, мы можем запросить отношение «многие ко многим», например:
queryset_list = queryset_list.filter(
Q(title__icontains=query) |
Q(content__icontains=query) |
Q(tags__name=query)
).distinct()
Здесь мы таким образом фильтруем наличие тега с name
, который является именно запросом. Но мы можем добавить __iexact
[Джанго-док] , __contains
[Джанго-док] или, [1116 ] __icontains
[Django-doc] поиск, чтобы сделать поиск более сложным. Например:
queryset_list = queryset_list.filter(
Q(title__icontains=query) |
Q(content__icontains=query) |
Q(tags__name__icontains=query)
).distinct()
будет соответствовать всем объектам, для которых есть тег, имя которого содержит подстроку, которая, игнорируя регистр, равна тому, что мы запрашиваем. Так что если вы пометили что-то с помощью 'foobar'
, то это будет совпадать и с запросом 'Oo'
.
Это странно, потому что каждый раз, когда я создаю представление прокрутки с кадром и размером содержания в границах экрана или на размере, представление прокрутки не прокручивает (или возврат) в том направлении.
// Should scroll vertically but not horizontally
UIScrollView *scrollView = [[UIScrollView alloc] initWithFrame:CGRectMake(0, 0, 320, 480)];
scrollView.contentSize = CGSizeMake(320, 1000);
Вы уверенный, что кадр соответствует полностью в экране, и ширина contentSize не больше, чем представление width прокрутки?
Попытайтесь установить scrollView.bounces на НЕ и scrollView.alwaysBounceVertical к ДА.
Что-то для учета: Вы знаете, что нет ничего дополнительного для наблюдения горизонтально, но пользователи будут знать это? Можно хотеть немного горизонтального возврата, даже если нет никакого дополнительного содержания для показа горизонтально. Это позволяет нам, пользователь знает, что их попытки прокрутить горизонтально не игнорируются, нет только ничего там, чтобы они видели. Но, да, часто Вы действительно не хотите возврат.
Удостоверьтесь, что contentSize UIScrollView не более широк, чем сам UIScrollView. В моих собственных приложениях этого было достаточно для предотвращения горизонтальной прокрутки, кроме случаев, где я получил действительно сумасшедший сильный удар в случайных направлениях (например, запуская прокрутку, в то время как представление все еще замедлялось).