전 생애에 걸쳐 업데이트 될 모델이 있습니다. 각 업데이트가 원본을 업데이트하는 대신 이전 개체를 기반으로 새 개체를 반환하도록합니다. 이것은 사용자가 이전 오브젝트를 참조로 겹쳐 쓰지 않도록하면서 오브젝트를 제공하기위한 것입니다. 나는 동일한 양식을 사용하여 시도했는데, this question은 내가 원한 것을 성취 할 수 있다고 제안했으나 대신 업데이트했다. 그런 다음 save 메서드를 재정의하여 아래 코드에서와 같이 CreateView를 가리 키려고 시도했지만 CreateView 인스턴스가 첫 번째 인수로 필요하다고 말했습니다. 내가 원하는 행동을 취할 수있는 방법이 있습니까?대신 django UpdateView를 사용하여 새 객체를 만듭니다.
class TriageUpdateView(PermissionRequiredMixin, UpdateView):
model = Triage
form_class = TriageForm
login_url = "/login/"
permission_required = "myapp.add_triage"
def form_valid(self, form):
obj = form.save(commit = False)
obj.completed_by = self.request.user.person
return TriageCreateView.form_valid(self, form)