【发布时间】:2022-01-09 12:13:55
【问题描述】:
我正在使用 Python 3.9 和 Django 3.2。我有这个类,它有另一个字段......
class Transaction(models.Model):
...
id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)
account = models.ForeignKey('Account', on_delete=models.CASCADE)
我想获得一组不同的 Account 对象,与某些交易相关联。所以我尝试了这个
class TransactionManager(models.Manager):
def get_accounts_with_pending_transactions(self):
"""
Returns acounts with pending transactions
"""
return Transaction.objects.filter(status=Transaction.Status.PENDING).values("account").annotate(n=models.Count("pk"))
...
但是,上面似乎返回了一个字典列表,而不是对象。因此,我无权访问我的 Account 对象中的所有字段。有没有办法编写查询来获取 Account 对象,以便它们已经被水合为实际对象?
【问题讨论】:
标签: python django django-queryset