I have two values that depend on the same case when condition in my sql call. Currently I duplicate the condition to set each value separately, but can I combine the two identical cases to set both values at once?
edit - added an example:
self.filter().values(
fee=Case(
When(
Q(fee_override=None) & Q(code='TYPE1'),
then='user__fee__amount'
),
When(
Q(fee_override=None) & Q(code='TYPE2'),
then='user__fee__amount'
),
default='fee_override___amount',
output_field=DecimalField(),
),
fee_is_percent=Case(
When(
Q(fee_override=None) & Q(code='TYPE1'),
then='user__fee__is_percent'
),
When(
Q(fee_override=None) & Q(code='TYPE2'),
then='user__fee__is_percent'
),
default='fee_override___is_percent',
output_field=BooleanField(),
)
)