私は信じられないほど単純なDjangoモデルを持っています:
class Person(models.Model):
name = models.CharField(max_length=100)
実際の名前が変更された場合、このモデルの保存を拒否したいのですが、大文字の変更を許可したいと考えています。たとえば、次のようになります。
SAM -> sAm: allowed
Sam -> SAM: allowed
Sam -> John: not allowed
save()
そのような編集が拒否されるように、Person モデルのメソッドをオーバーライドするにはどうすればよいですか? 特に、私は苦労しています:
- メソッド内のオブジェクトの保存前バージョンにアクセスします
save()
。 - 保存が拒否されたときに、Django の管理領域内でユーザーにメッセージを表示します。
- 保存が拒否されたときにユーザーを編集画面に戻す。
質問のどの部分でも自由に答えてください。事前に感謝します!