给定的交易具有奖励。基于奖励,有0个或更多必填字段。字段的“名称”由IncentiveRequiredField.name给出。所以关系是每个Transaction + RequiredField都有一个唯一的值。
class Transaction(models.Model):
incentive = models.ForeignKey(Incentive)
class TransactionRequiredField(models.Model):
transaction=models.ForeignKey(Transaction)
incentiverequiredfield=models.ForeignKey(IncentiveRequiredField)
value=models.CharField(max_length=100)
class Incentive(models.Model):
name = models.CharField(max_length=100)
class IncentiveRequiredField(models.Model):
incentive = models.ForeignKey(Incentive)
name = models.CharField(max_length = 100)
我认为我对模型的这一部分是正确的,尽管我不确定。
当我尝试添加新的交易时出现问题。在用户从下拉列表中选择激励后,我需要能够显示一组标有IncentiveRequiredField.name的TextInput。这些输入需要绑定到TransactionRequiredField模型。
我知道我需要使用Javascript来完成此任务,我感到很舒服 通过jQuery设置AJAX调用以获取Transaction的RequiredFields列表(给定incentive_id),但我对Django(以及一般的python)完全不熟悉,所以我不知道如何将它添加到Add /更改Django Admin中的事务视图。
有人可以向我解释(就像我5岁),我怎么回事?