Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 4, 2020 20:10:34

alex2019
Зарегистрирован: 2020-10-04
Сообщения: 1
Репутация: +  0  -
Профиль   Отправить e-mail  

Custom manager, annotate, search

Здравствуйте. Делаю поиск через post и нужно посчитать, передать в queryset сумму полей взависимости от того что придет из формы POST. Вывотятся карточки товаров.

   
class MyManager(models.Manager):
    def tut(self, x=0, y=0):
        all_summ = None
        if x == 1:
            all_summ = F('price_1') * y
        elif x == 2:
            all_summ = (F('price_1') + F('price_2')) * y
        elif x == 3:
            all_summ = (F('price_1') + F('price_2') + F('price_3')) * y
        return super().get_queryset().filter(max_size__gte=x).annotate(my_s=all_summ)
x и y приходят из формы постом.
Можно ли так подменять annotate и правильно ли делаю в целом?
p.s. или это бред пьяного ослика от неопытности
Спасибо

Отредактировано FishHook (Окт. 4, 2020 21:20:16)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version