9

特定のモデルを管理者に保存する前に、削除確認ページの動作をエミュレートしたいと考えています。私の場合、1 つのオブジェクトを変更すると、オブジェクトの現在の古い状態に依存するため、特定の他のオブジェクトを削除する必要があります。

実際のカスケード更新を実装する場所 (親モデルの save メソッド内) は理解していますが、ユーザーに確認を求める (保存しない場合はロールバックする) 簡単な方法がわかりません。save メソッド内に奇妙な確認ロジックを直接実装できると思いますが (2 段階の保存のようなものです)、それは見栄えが悪いようです。

django コードベースへの一般的なポインタでさえ、何か考えはありますか?

ありがとう!

4

3 に答える 3

2

モデル管理者のメソッドをオーバーロードget_formし、生成されたフォームにチェックボックスを追加して、チケットにする必要があります。または、リクエストをオーバーライドchange_viewしてインターセプトすることもできます。

于 2008-09-22T11:42:42.177 に答える
1

私は決して Django の専門家ではないので、この回答は誤解を招く可能性があります。

どこかdjango.contrib.admin.options.ModelAdmin、特にrender_change_formとを探し始めresponse_changeます。モデルの ModelAdmin をサブクラス化し、それらのメソッドに必要な動作を提供する必要があると思います。

于 2008-09-22T11:36:43.313 に答える
0

問題のモデルの管理用テンプレートをオーバーライドすることを検討しましたか? このリンクは、プロセスの優れた概要を提供します。この特定の状況では、より細かいレベルの制御を行うことが、目的の結果を達成するための最良の方法である可能性があります。

于 2008-09-23T15:37:06.033 に答える