Inflearn brand logo image

인프런 커뮤니티 질문&답변

성지님의 프로필 이미지
성지

작성한 질문수

파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트 (장고 4.2 기준)

08-14 장고 기본 CBV API - FormView를 활용한 생성-수정 요청 처리

08-14 FormView 관련 질문

작성

·

19

·

수정됨

0

안녕하세요 강사님.

 

08-14 강의 도입부에서 FormView는 ModelForm클래스가 아닌 Form클래스에 대한 일반적인 패턴을 구현하는데 사용한다고 말씀 주셨고 코드에서도 db저장 로직을 직접 구현해 주셨는데요. FormView에서도 form_class를 ModelForm으로 지정하면 좀 더 간결한 것 같은데 혹시 FormView에서 ModelForm을 사용하면 안되는 이유가 있을까요?

[코드 예시]

ㄴ강의 내 #1. FormView 활용에 나오는 오른쪽 코드에서 form_class를 ModelForm으로 만들어 form_valid를 오버라이딩 하였습니다.

 

class PostCreateView(FormView):
    form_class = PostForm
    template_name = "blog/post_new.html"
    success_url = "/admin/"

    def form_valid(self, form):
        form.save()
        return super(PostCreateView, self).form_valid(form)

답변 1

0

이진석님의 프로필 이미지
이진석
지식공유자

안녕하세요.

FormView에서 ModelForm을 못 쓸 이유는 전혀 없구요. 강의에서는 단지 ModleForm이 아닌 Form을 사용하는 환경에서는 이렇게 저장을 구현함을 보여드리기 위함이었습니다.

ModelForm을 쓰실 때에는 보여주신 코드대로 구현하시면, 퍼펙트합니다. 👍

질문에 감사드립니다. :-)

성지님의 프로필 이미지
성지

작성한 질문수

질문하기