問題タブ [django-forms]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
7331 参照

python - Django フォーム プレビュー - 「cleaned_data」の操作方法

これに関連する以前の質問に答えてくれた Insin に感謝します。

彼の答えはうまくいきましたが、「cleaned_data」の提供、またはより正確にはその使用方法に当惑していますか?

クイック リファレンスとして、post_post メソッドの内容を次に示します。

0 投票する
7 に答える
85680 参照

python - Django フォーム - ラベルの設定

他の 2 つのフォームから継承するフォームがあります。私のフォームでは、親フォームの 1 つで定義されたフィールドのラベルを変更したいと考えています。これを行う方法を知っている人はいますか?

で実行しようとしてい__init__ますが、「'RegistrationFormTOS' オブジェクトに属性 'email' がありません」というエラーがスローされます。誰も私がこれを行う方法を知っていますか?

ありがとう。

ここに私のフォームコードがあります:

0 投票する
1 に答える
744 参照

python - 管理インターフェースで tabularinline フィールドの html_name をオーバーライドできますか?

TabularInline 管理フォームのフィールドの html 命名をオーバーライドして、ダッシュが含まれないようにすることは可能ですか?

ここで得た知識を応用して、オートコンプリート機能を持つ TabularInline 管理フォームを作成しようとしています。

Django が tabularinline クエリセットのフィールドに次の行のような名前を付けることを主張することを除いて、すべて機能します。

したがって、モデルが TravelLogClient で、外部キー フィールドが会社の場合、tabularinline クエリセットの 3 つのエントリの HTML フォームのフィールドは次のようになります。

問題は、javascript がダッシュを含む識別子を嫌うことです。そのため、JavaScript が失敗し、オートコンプリートが機能しません。

これは、TABULAR インライン フォームだけの問題です。表形式ではない管理フォーム フィールドでJannis のオートコンプリートの例を使用すると、フィールド名..._set-[index]-...に HTML と JavaScriptの " " 部分がないため、問題なく動作します。

contrib.forms.forms.pyとのアンダースコアのダッシュを変更するパッチを django のソース コードに送信するのではなく、contrib.forms.formsets.py何らかの方法で動作をオーバーライドできる可能性があることに気付きました。

それに失敗した場合、代わりに html_name のダッシュをアンダースコアにする最も簡単な方法は何ですか?

前もって感謝します!

0 投票する
1 に答える
1313 参照

django - ModelForm の使用と引数の受け渡し

管理インターフェイスをカスタマイズするために MyUserAdminForm を使用しています。User テーブルの pk を引数としてフィルターに渡す必要があります

ハードコーディングされた「3」の代わりに、User テーブルの pk を渡す必要があります。これを達成する方法を知りたいですか?

0 投票する
4 に答える
14401 参照

python - Django Forms、request.user に初期値を設定

以下を可能にする方法はありますか、それとも他の場所で行う必要がありますか?

0 投票する
7 に答える
22548 参照

django - clean()中にDjangoフォームフィールドの値を変更する

Djangoアプリのフォームとカスタムフィールドにカスタム検証を追加しています。エラーをトリガーするときにフィールドの値を変更できるようにしたいと思います。たとえば、エラーが発生した場合は、clean()で修正されたフィールド値と、「データは以下で修正されました。もう一度[保存]をクリックして、これらの変更に問題がないかどうかを確認してください」というエラーメッセージを表示してフォームを再表示する必要があります。

このようにcleaned_data[]で変更されたデータを返そうとしましたが、機能しません。エラーは正しく表示されますが、フォームが再表示されたときにフィールド値が修正されたHTMLで更新されません。

フィールドでも同じことをしたいのですが、例外が原因でエラーが発生するため、修正した値を返す機会がありません。form clean()メソッドと同様に、エラーは正しく表示されますが、値は更新されません。

0 投票する
3 に答える
998 参照

ajax - djangoフォームで複雑なグラフィカルUI要素を処理するにはどうすればよいですか?

標準の django フォーム入力フィールドと一緒に表示される、いくつかの複雑な GUI 要素 (強調表示できる多くの日を含むカスタム カレンダーなど) があります。これらの複雑なフォームからのデータ I/O を Django フォームと共に処理したいと考えています。

以前は、Django フォームが保存またはレンダリングされた後、HTML フォームでこれらのカスタム GUI 要素を処理するために AJAX 要求を使用していましたが、これは多くの問題とカスタマイズされた AJAX コーディングにつながります。Django フォームで複雑な対話ウィジェットを処理する良い方法は何ですか?

0 投票する
2 に答える
386 参照

python - ModelForm の複数のフォーム フィールドに ManyToManyField を分割する

したがって、トーナメントと呼ばれる ManyToManyField を持つモデルがあります。2 つのトーナメント フィールドを持つ ModelForm があります。

all() の後のメソッドは、サブクラス化された QuerySet からのものです。ビューにフォームを保存するときは、次のようにします。

とにかく、これはすべてうまくいきます。どうすればいいのか分からないのは、既存の投稿を読み込んでいるときにこれらのフォーム フィールドに入力することです。つまり、instance=post をフォームに渡すときです。何か案は?