> Не понимаю как обратиться к возрасту авторизованного пользователя. Если я правильно понял вопрос, то request.user (link)
Для сравнения, по-моему, без conditional expressions (link) не обойтись. Что-то вроде этого: User.objects.annotate( older=Case( When(age__gt=request.user.age, then=True), default=False, output_field=BooleanField(), ) )
Не совсем то... Мне нужно взять значение поля возраст и вставить в формулу, что то вроде: Member.objects.all().annotate(difference=F('age') - F(request.member.age)) . Member - мой кастомный пользователь. Интересует, чем можно заменить F(request.member.age), чтоб это работало. На самом деле там формула сложнее, я для примера эту использовал
Поясню свою точку зрения. Он спрашивает одно и то же в разных группах, но по факту твой ответ неинтересен(особенно, если ответили раньше). Можешь задать уточняющий вопрос и тебе не ответят :)
Member.objects.all().annotate(difference=F('age') - request.user.age) Для указанного примера что-то такое должно быть. В случае более сложной формулы надо смотреть, что конкретно сделать нужно. Простая арифметика будет работать так же, как вычитание выше. Документацию в данном случае стоит начинать смотреть отсюда.