Django Queryset annotate() date на основе двух столбцов

Проблема, с которой я столкнулся, заключается в следующем:

Проблема: Мне нужно рассчитать дату окончания использования купона, и для этого я должен использовать дату погашения купона и количество месяцев, на которые предоставляется купон.

class Coupon(...):
    ...
    numMonths -> int
    ...

class CouponUses(..):
    ...
    redeemDate -> datetime
    coupon -> FK Coupon
    ...

Я пытался:

1 - Создание свойства в модели CouponUses для вычисления суммы redeemDate + relativeDelta (months = self.coupon.numMonths), которое работает, но не в кверисете

2 - Попробуйте напрямую аннотировать на CouponUses queryset ExpressionWrapper (F ('redeemDate') + relativeDelta (months = F ('coupon.numMonths')) и ни. Однако проблема возникает только тогда, когда я пытаюсь использовать значение месяцев из столбца numMonths, если я помещаю значение напрямую, оно работает.

Вернуться на верх