私は、django で 2 つの選択肢フィールドを持つフォームを実装するための最良の方法を見つけようとしています。例 - フォーム フィールド 1 は「料理」と呼ばれるラジオ ボタン (1 つのオプションのみを選択できます) であり、2 番目は「メニュー」と呼ばれる複数選択フィールドです。'cuisine' から 'french' を選択すると、メニュー リストにフランス料理が表示されますが、'chinese' を選択すると、別の選択肢が表示されます。
フォーム検証プロセスでこのサーバー側を操作するにはどうすればよいですか。料理オプションに関連する料理のみが受け入れられるように、2 つのコントロールを「バインド」するにはどうすればよいですか?
そして、これをどのようにレンダリングするのですか - 料理の種類ごとに ModelForm を渡す必要がありますか、それともすべてを含む単一のメニュー ModelForm を用意して、クライアント側で表示/非表示にするだけですか?
すべてのメニュー オプションはデータベースに保存され、フィクスチャとして読み込まれます。料理はアプリにハードコードされています。
CUISINE = ((0,'French'),(1,'Chinese'),(2,'Italian'))
class MenuItem(models.Model):
description = models.CharField(max_length=200)
cuisine = models.IntegerField('Cuisine', choices=CUISINE)