問題タブ [inline-formset]

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 投票する
2 に答える
2191 参照

django - save_formset および save_model の親オブジェクト フィールドにアクセスする

InvoiceAdmin モデルで ActionAdminInline として使用される ActionAdmin モデルがあります。

InvoiceModel では、save_formset をオーバーライドして、いくつかの値を自動設定します。各アクション インスタンスの値を設定することは問題ありませんが、親の請求書のフィールドを取得できませんでした。

私はそれがselfまたはself.project.pkでなければならないと思っていました。また、他のスレッドで見られるform.project.pk で取得しようとしました。

私が得るエラーは、InvoiceAdmin にそのようなフィールドがないことに関するものです。それは私には理にかなっています。self は InvoiceAdmin オブジェクトであり、Invoice オブジェクトではありません。Action instance.invoice と instance.project を設定するには、Invoice オブジェクト フィールドを取得する必要があったと思います。

この親オブジェクトの値を取得する方法を誰かが知っていますか???

次のようになります。

これはエラーメッセージです:

セルフ オブジェクトが InvoiveAdmin で Invoice ではないことは問題ですか? インスタンス オブジェクトは Action であり、ActionAdmin ではありませんか?!

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

django - 動的フォームセットの問題

djangoで動的なフォームセットを構築するのに助けが必要です。いくつかのJavaScriptが必要であることを理解しています。私はJavaScriptの専門家ではありません。しかし、いくつかのサンプルコードを見つけ、それを自分の特定のフォームで機能するように適合させようとしています。[追加]ボタンをクリックしても何も起こりません。そして、私は前進する方法に途方に暮れています。助言がありますか?

モデルは参加者イベント登録用です。顧客は、イベントに参加するために複数の人を登録できます。
参加者の追加ボタンを取得しようとしています。

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

django - Django インライン フォームセット エラー

フォームにインライン フォームセットを追加しようとしています。エラーを再現するための最小限のコードは次のとおりです。

models.py

urls.py

ビュー.py

フォーム.py

これにより、AttributeError: 'ModelFormOptions' オブジェクトに属性 'get_parent_list' がありません。SO でここに示されている解決策に従っているので、私は少し困惑しています。

編集: フォームセットの有無にかかわらずエラーが発生するため、FestivalCreateView のフォームセットの使用を削除しました。

0 投票する
0 に答える
1062 参照

inline-formset - フォーム ウィザードでインライン フォームセットを使用する場合、フォームセットのフォーム検証はどこに行くのですか?

SessionWizard でインライン フォームセットを使用する方法の詳細を学習する例を作成しています。最終的に、送信前にテンプレートを介して個々のフォームを追加および削除するために、動的フォームセットを統合したいと考えています。ただし、2 番目のフォームにデータがない場合、通常の ModelForm とは異なり、検証に失敗します。

オーバーライドする必要がある SessionWizard 内のメソッドはありますか? それは Django 内で本質的に処理されるものですか?

ガイダンスと例をいただければ幸いです。

models.py

urls.py

フォーム.py

wizard-form.html

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

django - Djangoインライン外部キーが親主キーと一致しません

インライン フォームを使用して Django エラーを回避するための助けが必要です。私はこれを理解できないようです。検証を試みる前にその方法を理解できれば、おそらく eventID を強制的に挿入できます。

フォームを送信すると、次のエラーが表示されます。Hidden field (event): The inline foreign key did not match the parent instance primary key

このコードを機能させる方法はありますか?

次のコードは、教師がイベントに複数の生徒を登録できるようにすることを想定しています。

------ モデル.py ------------

------ forms.py -----------

---------- views.py ----------

0 投票する
0 に答える
191 参照

django - djangoインラインフォームセットでデータを隠す

djangoアプリのインラインフォームセットを使用して1対多の関係を設定することを調査しています. ついにインラインフォームセットが機能するようになり、すべてのデータが 1 つのフォームに表示されることに気付きました。これは私のユーザーの 1 人にとって素晴らしいことです。ただし、ユーザーが既存のデータを表示することを許可されていない別のユース ケースがあります。ユーザーは新しいデータを追加できますが、既存のレコードを表示することはできません。

これを行うためにインラインフォームセットを使用することは可能ですか? 1 対多の関係ですべてを表示するのではなく、インライン フォームセットで既存のデータをすべて非表示にすることはできますか? もしそうなら、どのように?例はありますか?

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

django - Django: ドキュメントのインライン フォームセットの例

問題の解決策としてインライン フォームセットを試すためのヒントが与えられました。サンドボックスプロジェクトで実験中です。Django ドキュメントとまったく同じを複製しようとしていますが、失敗します。:(

モデル:

意見:

管理画面で と を正常に作成しましAuthor1Author2

Book1Book1b割り当てられAuthor1
Book2ますAuthor2

試してみると、<class 'Sandbox_App.models.Book'> has no ForeignKey to <class 'Sandbox_App.models.Author'>

トレースバック:

なぜこれが機能しないのですか?

どうもありがとう

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

python - Django: インライン フォームセットでフィールド ウィジェットを変更する方法

私はDjangoが初めてで、ドキュメントにこれが欠けていると思います。
問題は、inline-formset ではフォームを宣言せず、2 つのモデルを渡して構築するだけであることです。
インライン フォームセットを使用して単一フィールドのウィジェットを変更する方法を知りたいですか?

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

django - django フォーム - 外部キーのフィールドへのアクセス

モデル B への外部キーを持つモデル A からモデルフォームを作成したいと思います。

だから私はこれをしました:

しかし、私はいくつかのフィールドだけが欲しい:

問題はここにあります.bをBオブジェクトのリストにしたくないのですが、フィールドBaとBcが必要です(たとえば)。「fields = ('a', 'ba', 'bc')」と「fields = ('a', 'b_ a', b _c')」を試してみましたが、無駄でした。

だから私はインライン formsetsに来ましたが、インラインのフィールドのセットを制限するものは何も見ませんでした。

私は何をすべきか ?ありがとう。

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

django - 複数のデータベース用の Django GenericTabularInline

GenericTabularInline クラスを、Django ドキュメント (https://docs.djangoproject.com /en/dev/topics/db/multi-db/) ですが、子モデルがインライン フォームで編集されている場合は、常に既定のデータベースに書き込みます (2 番目の管理者にセカンダリ データベースのみを処理してもらいたいのですが、モデルはどちらも同じです)、そのため、一部のメソッドをオーバーライドしたり、何か間違ったことを行ったりしてはなりません。これが私がこれまでに持っているクラスです:

ヘルプやヒントをいただければ幸いです。