Форум программистов, компьютерный форум, киберфорум
Python: Django
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 11.02.2020
Сообщений: 11

Django filter выдает несколько одинаковых объектов

28.08.2021, 22:54. Показов 1776. Ответов 1

Студворк — интернет-сервис помощи студентам
У меня есть функция которая выдает перечень объектов (видео), если в названии/категории/и т.д. есть совпадения с тем что ввел пользователь в input. Проблема в том что когда я использую пару queryset Q() разделенных |, функция выдает какие-то объекты по нескольку раз!

Code
1
2
3
4
5
6
7
8
9
10
def result(request):
    val = request.GET.get('search', '')
 
    if val:
        if Video.objects.filter(Q(title__contains=val) | Q(stars__name__contains=val) | Q(studios__name__contains=val) | Q(categories__name__contains=val)):
            print(Video.objects.filter(Q(stars__name__contains=val)))
            context = {
                'videos' : Video.objects.filter(Q(title__contains=val) | Q(stars__name__contains=val) | Q(studios__name__contains=val) | Q(categories__name__contains=val))
            }
        return render(request, 'main/result.html', context)
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
28.08.2021, 22:54
Ответы с готовыми решениями:

Используя map/filter/reduce из несколько одинаковых подряд идущих элементов оставить только один
Используя map/filter/reduce из несколько одинаковых подряд идущих элементов оставить только один. Например -> Я могу только так...

Как создать несколько одинаковых объектов?
С++ , SFML. Пожалуйста, покажите на каком-нибудь простейшем примере, как отрисовать один и тот же спрайт из двух разных точек. И в идеале...

Как уничтожить несколько одинаковых объектов на сцене одним нажатием на кнопку?
Постоянно на сцене генерируются одинаковые объекты. При нажатии на кнопку нужно, чтобы (1)они все уничтожались/либо (2)уничтожалось...

1
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
06.09.2021, 06:19
Лучший ответ Сообщение было отмечено Doof как решение

Решение

Python
1
.distinct()
Добавлено через 3 минуты
Python
1
2
3
4
5
6
7
def result(request):
    val = request.GET.get('search')
    if val:
        videos = Video.objects.filter(Q(title__contains=val) | Q(stars__name__contains=val) | Q(studios__name__contains=val) | Q(categories__name__contains=val)).distinct()
    return render(request, 'main/result.html', {
         'videos' : 
    })
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
06.09.2021, 06:19
Помогаю со студенческими работами здесь

Как объединить несколько одинаковых объектов в один, просуммировав отличающееся поле
Доброго времени суток. Вопрос задан в заголовке темы. Может кто подсказать, как это сделать НЕ ИСПОЛЬЗУЯ циклы, в помощью встроенных...

Массив объектов и filter
Здравствуйте. Возник вопрос: можно ли фильтровать массив объектов по полям объекта, используя filter? Допустим, есть массив объектов...

Django несколько баз данных и несколько приложений в проекте
Здравствуйте всем! По данному вопросу есть офф.документация и много других ссылок на эту тему, но полностью тема для меня так и не...

Методы массивов: метод filter выдаёт undefined
Здравствуй,друг! Помоги разобраться почему при переборе массива методом filter в конечном счёте выводится undefined! исходный код: ...

Access Me.Filter - несколько критериев, синтаксис
есть два фильтра одной формы, которые хорошо по отдельности работают. эти фильтры взаимоисключают друг друга. нужно объединить их,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru