ブール値を持つテーブルを介してリンクされた多対多のフィールドを持つモデルがあります。
私はこれを別のシナリオで取得しました。ユーザーをメイン モデル、interest を多対多フィールド、user_interest モデルをスルー モデルとして取ります。多くの価値、
現時点では、私のニーズに応える適切なフォーム インターフェイスを見つけようとして立ち往生しています。現在、関心のある選択のみを表示する MultipleSelect ウィジェットを使用しています。関心を選択して値を指定できるフィールド コントロールの例はありますか?ブールフィールド? そうでない場合、私の状況で従うべきベストプラクティスは何ですか?
よろしくお願いします、
コードサンプルで質問を更新する
class Interest(models.Model):
name = models.CharField(_('Name'), max_length=200, )
class UserInterest(models.Model):
interest = models.ForeignKey(Interest, )
user = models.ForeignKey(getattr(settings, 'AUTH_USER_MODEL'), )
join_mail_list = models.BooleanField(default=False)
class User(models.Model):
name = models.CharField(max_length=100)
interest = models.ManyToManyField(Interest, through='UserInterest', related_name='user_interest')
上記のモデルに基づいて、User モデルから ModelForm を作成しようとすると、完全に正しい MultiSelect フィールドとして関心が高まります。しかし、私の場合、フォームでユーザーの関心を収集し、その特定の関心のために join_mail_list したい場合は、関心ごとにフォームを作成したいと考えています。お知らせ下さい?