以下の内容はhttps://blog.kyanny.me/entry/2021/01/25/201723より取得しました。


Django: Signals を使ってモデルの変更履歴を残す

Signals | Django ドキュメント | Django

ハマったところ

  • pre_save ハンドラの引数に渡される instance の attribute は「更新されるべき値」に置き換わっているので、「更新前の値」を得るには Book.objects.get(id=instance.id) などとして自前で DB から取得する必要がある。
  • get() を使うと book テーブルに一行も無い場合にエラーになる(ので、永遠に一行目を保存できない)。これを防ぐには Book.objects.filter(id=instance.id).first() として例外の発生を抑止する。

gist.github.com




以上の内容はhttps://blog.kyanny.me/entry/2021/01/25/201723より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14