Django 1.3 の新しいクラスベースのジェネリック ビューでフォーム プレフィックス キーワードを設定するにはどうすればよいですか? プレフィックスを設定すると、レンダリングされた HTML で ID が重複するのを防ぎます。これは、フォーム APIについてここに文書化されています。
AJAX を使用していくつかの異なるフォームをロードしているため、タグの重複に関する問題が発生しています。
Django 1.3 の新しいクラスベースのジェネリック ビューでフォーム プレフィックス キーワードを設定するにはどうすればよいですか? プレフィックスを設定すると、レンダリングされた HTML で ID が重複するのを防ぎます。これは、フォーム APIについてここに文書化されています。
AJAX を使用していくつかの異なるフォームをロードしているため、タグの重複に関する問題が発生しています。
私はあなたの問題を見ます!を使用しようとしてFormView
います。これにより、 を指定できますform_class
が、プレフィックスは指定できません。
私はこれを試していませんがFormView
、 、または使用しているものをサブクラス化し、メソッドをオーバーライドしget_form_kwargs
てプレフィックスを追加することをお勧めします。
次のようなことができます。
class MyFormView(FormView):
form_prefix = None
def get_form_kwargs(self):
kwargs = super(FormView, self).get_form_kwargs()
if self.form_prefix:
kwargs.update({'prefix': self.form_prefix})
return kwargs
form_prefix
次に、引数をMyFormView.as_view
urlconfに入れることができると思います。
私が言うように、私はこれを試したことはありませんが、試してみる価値があるかもしれません - うまくいくかどうか教えてください!
FormView を希望どおりに動作させるために、FormMixin を変更するパッチを添付して、django でチケットを開きました。