1

特定のトランザクションにはインセンティブがあります。インセンティブに基づいて、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 でラベル付けされた TextInputs のセットを表示できるようにする必要があります。これらの入力は、TransactionRequiredField モデルに関連付ける必要があります。

これを実現するには Javascript を使用する必要があることはわかっています。jQuery を介して AJAX 呼び出しを設定し、(incentive_id を指定して) トランザクションの RequiredFields のリストを取得することに慣れていますが、Django はまったく初めてです (そしてpython 一般的に)、Django Admin の [トランザクションの追加/変更] ビューにそれを追加する方法がわかりません。

誰かが私に説明できますか (私は 5 歳のようです)、どうすればこれを実行できますか?

4

0 に答える 0