vikkyshostak
@vikkyshostak
< This head full of dreams.

Django. Как отсортировать один QuerySet по ID второго и заменить все совпадения на значения из второго QuerySet?

Доброго времени года.

Django 2.x, Python 3.6.1.

Есть проект с партнёрской программой, которая должна работать вот так: каждый пользователь может стать оптовиком и получить уникальные для него цены на товары на сайте — все остальные видят только розницу. Цены для каждой товарной позиции (и для каждого такого оптовика) — проставляет модератор в админке. Все оптовые цены прикреплены к юзеру, как inlines модель (в админке).

Итак, есть два QuerySet-а: первый выводит все товары с розничной ценой, второй ID товара с ценой (общая точка — ID товара), проставленной для конкретного пользователя. Вопрос: как объединить эти QuerySet-ы, чтобы вначале было сравнение (поиск?) одинаковых ID товаров, далее — замена розничной цены найденного товара на оптовую (из QuerySet-а юзера) и сохранение этого всего в один массив? Как доп. вариант, просто замена записи в первом кверисете на найденную.

Иными словами, на выходе должен получиться QuerySet, где все цены на товары, которые установил модератор для конкретного юзера, — заменены на пользовательские.

Буду рад толковым советам.
Заранее благодарю!
  • Вопрос задан
  • 74 просмотра
Пригласить эксперта
Ответы на вопрос 1
rSedoy
@rSedoy
Python/Django
За зачем заменять? При выводе QuerySet делаете проверку есть у товара связь с этим со спец. ценой, и если есть, то вместо текущего, выводите этот со спец. ценой.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы