Как вернуть последний объект, который относится к другому, QuerySet.annotate() received non-expression(s): 23 - django
У меня две модели :
class ClientSeller(models.Model):
name = models.CharField(max_length=40,unique=True)
class Payment(models.Model):
client_seller = models.ForeignKey(ClientSeller,on_delete=models.CASCADE,blank=True,related_name='client_seller')
price = models.DecimalField(max_digits=20,decimal_places=3)
я хочу вернуть последнее поле цены Payment
когда я get
объект из ClientSeller
вот что я пытался :
def loaner_invoice(request,id):
obj = ClientSeller.objects.annotate(last_pay=Payment.objects.filter(
client_seller=id).values_list('price',flat=True).order_by('-pk')[0]).get(id=id)
но он возвращает эту ошибку :
QuerySet.annotate() получил невыражение(я): 23.000.
есть ли способ достичь этого, пожалуйста? спасибо за помощь ..