我是 Django 的新手。我想要账户和交易的功能。账户可以有三种类型的交易。收入、费用和转移。它们之间都有一些共同的领域。但也有一些额外的领域。我想知道我可以制作这样的模型,以便我可以访问帐户的所有交易。而且我也想在休息框架中使用它们。有可能这样做吗?
from django.db import models
class Account(models.Model):
name = models.CharField(max_length=50)
balance = models.DecimalField(max_digits=7, decimal_places=1)
def __str__(self):
return self.name
class Transaction(models.Model):
amount = models.DecimalField(max_digits=7, decimal_places=1)
title = models.CharField(max_length=200)
date_created = models.DateTimeField(auto_now=True,auto_now_add=False)
account = models.ForeignKey(Account, on_delete=models.CASCADE, related_name='account')
def __str__(self):
return str(self.amount)
class Income(models.Model):
source = models.CharField(max_length=200)
transaction = models.ForeignKey(Transaction, on_delete=models.CASCADE, related_name='transaction')
class Expense(models.Model):
category = models.CharField(max_length=200)
transaction = models.ForeignKey(Transaction, on_delete=models.CASCADE, related_name='transaction')
class Transfer(models.Model):
to = models.ForeignKey(Account, on_delete= models.CASCADE, related_name='to')
transaction = models.ForeignKey(Transaction, on_delete=models.CASCADE, related_name='transaction')