django では、変更をチェックし、必要な場合にのみ save を呼び出す傾向があります。たとえば、次のコードがあります。
# self == some Model...
save_required = False
if self.pct_complete != pct_complete:
self.pct_complete = pct_complete
save_required = True
if self.phase_pct_complete != phase_pct_complete:
self.phase_pct_complete = phase_pct_complete
save_required = True
if self.is_eligible_for_next_phase != is_eligible_for_next_phase:
self.is_eligible_for_next_phase = is_eligible_for_next_phase
save_required = True
if save_required:
self.save()
これは、Django がモデルの「前」と「後」の状態を追跡していないように見えるコメントを読んだことに基づいています。
質問:
私が他のアプリを使用していると、多くの人が状態を追跡し、必要な場合にのみ保存することはありません。これには理由がありますか、それとも私が過度に妄想的ですか?