1

Django モデルを保存または更新するときに XML にシリアライズする予定です。(XML は Flash ムービーにインポートされます)。post_save() または pre_save() シグナルをリッスンしてからシリアル化を実行するか、モデルの save() メトンで処理する方が良いですか?

4

2 に答える 2

2

モデルを保存するためのコア機能である場合は、save メソッドの一部として使用する必要があります。ただし、すでに機能するモデルがあり、それを他の目的に拡張したい場合は、適切に分離されたモジュールを可能にするシグナルが最善の策です。

良い例として、サイトにイベント ログを追加する場合があります。この場合、元のサイト コードを変更するのではなく、イベントを示すシグナルをリッスンするだけです。

モデルが正常に保存されたことを意味するため、通常は post_save() が最適です。

于 2008-09-25T21:49:44.517 に答える
0

投稿保存。そうすれば、新しいデータ (シリアル化を実行する理由) が既にデータベースに存在します。データベースから取得するだけで、余分な値を追加することを心配する必要のない、はるかにクリーンなコードになります。

頭に浮かぶもう 1 つの方法は、xml ファイルをデータベースと並行して維持することです。つまり、save() でデータをデータベースと xml ファイルに追加します。巨大なテーブルを扱っている場合、これによりオーバーヘッドがはるかに少なくなります。

于 2008-09-25T03:43:34.860 に答える