class AccountAdmin(admin.ModelAdmin):
def save_model(self, request, obj, form, change):
obj.security = get_random_code(10)
obj.password = get_password(obj.password, obj.security)
obj.save()
Token.objects.create(user=obj)
admin.site.register(Account, AccountAdmin)
save_model()方法里这么多参数用来干什么,还是默认的?
看了下调用,根本就没有传入这么多值嘛。
save_model が呼び出されるソース コードをすべて次のパラメーターで検索しました。
例 1 と例 2
このメソッドはモデルが保存されるときに呼び出されますが、この設計の目的は何でしょうか?
答えは次のとおりです。たとえば、投稿したコードでは、保存時にセキュリティを設定し、
この機能の設計は非常に合理的で便利だと言わざるを得ません。前
保存して新しいトークンを作成します。ロジックは非常にシンプルで、実装も簡単です。
后
obj は保存されたオブジェクト、form は ModelForm インスタンス、change は obj が変更されたかどうかを示すブール値です。変更がない場合、save メソッドは呼び出されない可能性があります。