Django

Django ModelForm 에서 create, update 개발

wangkisa 2021. 4. 15. 15:56

create 하는 경우:

 

form = ObjectForm(request.POST)
        # print('form:', form)

        if form.is_valid():
            form.save()
            return redirect(reverse('~~~~', kwargs={}))
        else:
            # print(form)
            return redirect(reverse('~~~~', kwargs={}))

 

update 하는 경우:

 

object_model = ObjectModel.objects.get(id=pk)

# update 하는 경우엔 instance 에 해당 모델 대입

form = ObjectForm(request.POST, instance=object_model)

# 수정하기
def post(self, request, pk):

	request_data = request.POST
	object_model = ObjectModel.objects.get(id=pk)
	# update 하는 경우엔 instance 에 해당 모델 대입
	form = ObjectForm(request.POST, instance=object_model)

	if form.is_valid():
		form.save()
		return redirect(reverse('~~~~~', kwargs={}))
	else:
		return redirect(reverse('~~~~~', kwargs={'pk': pk}))