0
一般的なUpdateViewを使用していますが、私はいくつかの望ましくない動作に気付きました。無効なデータを投稿すると、get_objectはUNSAVED POSTバージョンを返します。POST後のモデルのDBバージョンへのアクセス
実際に保存されるまで、テンプレートからDBバージョンにアクセスするにはどうすればよいですか?
一般的なUpdateViewを使用していますが、私はいくつかの望ましくない動作に気付きました。無効なデータを投稿すると、get_objectはUNSAVED POSTバージョンを返します。POST後のモデルのDBバージョンへのアクセス
実際に保存されるまで、テンプレートからDBバージョンにアクセスするにはどうすればよいですか?
UpdateViewのform_invalid
メソッドをオーバーライドして、オブジェクトをデータベースから再フェッチするようにします。一般的に、pkはURL confを介して取得されます。
from django.views.generic import UpdateView
class NewView(UpdateView):
def form_invalid(self, form):
self.object = self.model.objects.get(pk=self.object.pk)
return super(NewView, self).form_invalid(form)