базе данных с условием "OR". В документации используются Q объекты с логическим ИЛИ между ними: Q() | Q(). Но такое решение очень медленное. Есть что-то побыстрее, но чтобы можно было после этого применять дополнительные фильтры к QuerySet?
а почему не рассмотрите вариант поиска средствами языка sql?
А почему очень медленное, это особенность Q-объектов?
Сами по себе Q объекты быстрые, медленно работает именно логическое ИЛИ
Спасибо, буду иметь ввиду (не пользовался ими)
Пробовал сформировать запрос через Q и | и посмотреть какой запрос в sql получается?)
Попробую. А будет разница?
Нет, сэкономлю тебе время там будет select ... where ... or ...
Это я знаю, но вот уже сколько времени наблюдаю "Collecting data"
А, всё, не хочет выдавать информацию
Ну ты спросил, я отвечаю что Q+| == OR. Возможно проблема в другом.
На крайняк можешь два запроса "быстрых" сделать и потом Юнион по ним с вычетом дубликатов
Обсуждают сегодня