10
現在、2つの異なるモデルがあります。異なる基本モデルから複数のクエリセットを結合するDjango
class Journal(models.Model):
date = models.DateField()
from_account = models.ForeignKey(Account,related_name='transferred_from')
to_account = models.ForeignKey(Account,related_name='transferred_to')
amount = models.DecimalField(max_digits=8, decimal_places=2)
memo = models.CharField(max_length=100,null=True,blank=True)
class Ledger(models.Model):
date = models.DateField()
bank_account = models.ForeignKey(EquityAccount,related_name='paid_from')
account = models.ForeignKey(Account)
amount = models.DecimalField(max_digits=8, decimal_places=2)
name = models.ForeignKey(Party)
memo = models.CharField(max_length=100,null=True,blank=True)
私は、ビューでレポートを作成し、次のエラーを取得しています: は「ValuesQuerySet」クラスはそれぞれのケースで同じ値を含まなければなりませんマージ。
私がしようとしているのは、一般的なフィールドを引き出すだけなので、両方を連結することができます。
def report(request):
ledger = GeneralLedger.objects.values('account').annotate(total=Sum('amount'))
journal = Journal.objects.values('from_account').annotate(total=Sum('amount'))
report = ledger & journal
...
私はそれらをテストするために正確に同じようにしようとします。
def report(request):
ledger = GeneralLedger.objects.values('memo').annotate(total=Sum('amount'))
journal = Journal.objects.values('memo').annotate(total=Sum('amount'))
report = ledger & journal
...
私はこのエラーを取得する: は、二つの異なるベースモデルにクエリを組み合わせることはできません。
これはどのように達成できますか?