passwordChangeForm을 FBV로 하면 안되나요?
188
작성한 질문수 5
안녕하세요 선생님 휴일인데 죄송합니다.
저는 강의를 듣기전에 미리 한번 먼저 해보고 하는 방식으로 공부중입니다.
다만 로그인이나 프로필 수정쪽은 FBV를 사용해서 직접 구현을 하셔서 이번 비밀번호 변경도 FBV로 구현을 하겠구나 생각하고 AUTH앱의 PasswordChangeForm과 FBV로 구현해보고 강의를 수강하였습니다.
선생님께서는 CBV로 구현을 하셔서 질문드립니다.
CBV와 FBV를 다양하게 쓰는 예를 보여주시려고 사용하신건가요?
아니면 CBV는 AUTH앱의 passwordchangeVIew를 가져오면 기능들이 갖춰져 있기 때문에 편리하고 더 효율적이기 때문에 사용하신건가요?
아니면 그냥 아래 처럼 맞는지는 모르겠지만 함수로 구현해도 상관은 없는건가요?
처음 질문이라 좀 요점이 없는것 같은데 죄송합니다.
답변 1
0
안녕하세요.
장고의 뷰는 Callable Object입니다. 이를 함수(FBV)로 구현하셔도 되고 클래스(CBV)로 구현하셔도 됩니다. 모두 많이 사용하는 방법입니다. CBV로 구현하실 경우 중복 로직의 재사용성읖 높이실 수 있습니다. 그래서 장고 기본앱에서 많은 뷰가 CBV로 구현이 되어있는 것이구요.
직접 구현하실 경우 FBV로 구현하셔도 무방합니다. 단 장고 기본앱 auth 앱의 PasswordChangeView / Form에서 처리하고 있는 API는 똑같이 호출해주세요. 단순히 Form 처리 이외에 세션 처리를 하는 로직도 있으니깐요.
PasswordChangeView에서는 form valid 시에 아래의 api를 호출해주고 있습니다.
# Updating the password logs out all other sessions for the user except the current one.
update_session_auth_hash(self.request, form.user)
화이팅입니다. :-)
안녕하세요.
0
49
1
[OneToOne Field Demo] get_user_model() 메서드를 활용해야 하는 이유?
0
273
1
useEffect 훅에서 else 유무에 따른 결과
0
211
1
useAxios 훅의 dependency array 설정
0
245
1
useEffect에서 변수 업데이트 관련 질문
0
382
1
rest_framework.generics.CreateAPIView의 model 속성 유무
0
268
1
bootstrap4
0
470
4
리뉴얼 강의가 오픈이 되면 기존 강의는 더이상 못보는걸까요
1
364
1
admin form에서 앞선 필드 선택 후 다른 필드 select widget 구성하는 방법
0
573
3
useState는 필수일까요?
0
263
1
python manage.py makemigrations instagram 시 created_at default 오류가 발생합니다.
0
600
4
Django allauth를 사용한 소셜 로그인 시 에러
0
655
1
프로젝트명 변경 뒤, 디버그툴바+디버그모드 사용 시 에러
0
555
2
useLocalStorage() 함수 사용여부
0
228
1
django에 LOGIN_URL = '/accounts/login/'의 의미?
0
449
1
리듀서의 의미 재확인
0
430
1
simple-jwt Refresh Token 사용 노하우
0
899
2
docker compose 를 통한 배포 관련 오류 문의
0
670
1
파이썬 속도 장고 관련 궁금한게 있습니다.
0
365
1
is_like_user
0
233
1
related_name 오류
0
274
1
re_path 오류
0
258
1
re_path url
0
251
1
No post matches the given query
0
661
2





