私はPHP/ZENDに強いバックグラウンドを持っており、今はPython/Djangoの学習を使用しています。 Zendでは、フォーム要素オブジェクトを取っていつでも編集することができます。これは、完全に新しいフォームオブジェクトを作成せずに、フォームオブジェクトを取り出し、必要に応じて小さな変更を加えることができるため、優れています。私はこれをしようとしていますDjangoにあります。Python/Django - 作成後のモデルフォームを編集する
私はフォームを持っています。それを投票と呼ぶことができます。このフォームには、別のビューメソッドで適用される別のウィジェットが必要な場合があります。私は、オブジェクトがビュー内で作成された後、私はモデルのフォーム要素を変更したい
、基本的に
form = VoteForm(initial={})
## then something like
form.field.widget = newWidget
つまり...そのような小さな変化を伴うフォーム全体を再作成する必要はありません...
私はその方法を成功させずに試みました。私は、私が隠すフィールドを持っています。このテクニックを適用すると、フォーム要素は非表示として表示されません。あなたは私にあなたがジャンゴでそれをする方法の例を教えてくれますか? (どのように組み込みのウィジェットを使用していますか?) – GregL83
ちょっとGregL83、このコードは動作します(1.2.3で今テスト済み)。どのタイプのフィールドを隠そうとしていますか?また、ウィジェット**()** –
フォームフィールド "title = forms.CharField(label =" Header "、required = True)を呼び出していることを確認してください:form ['title']。widget = forms.HiddenInput() – GregL83