westagram을 진행하면서, 나름 엄청난 궁금증을 불러일으켰던
나의 귀여운 질문 🤯
대략 java에서 class 내부에 메서드 선언하는 것과 비슷하겠거니 하고
감으로 작업을 하고있었다.
(예제를 찾아봐도 상식적으로 다들 메서드명은 자유롭게 쓰던걸..! 👈🏻 무식하면 용감하다고..)
그랬더니 아무리해도 첫번째 매개변수 말고는 인식을 못하는 것 아닌가..
예를들면
> def signup(self, request) -> request를 인식 못함
> def signup(request, self) -> self를 인식 못함
분명 python method관련해서는
'class의 안의 메서드로서 객체화가 되었을 때 자기자신을 받아야하므로 self를 매개변수로서 꼭 받아야한다'
고 배웠는데..!!!!
self
를 인식하지 못하는가?self
만 인식 못하면 차라리 다행인데, 왜 상황에 따라서는(매개변수 순서) request
를 인식못하고 그러는거야?!?이게 내 주된 궁금증이었고, 도저히 뭐라고 검색해야 할 지도 감이 오지 않아서
멘토님들께 질문드렸다.
말이 좋아 부탁이지 거의 얼른 봐달라고 징징거리는 꼴.. 허허
그 결과..!!!!
충격적인 대답을 들었다.
자, 이런 상황이다. 🤯 🤯
- Q: 파이썬 개념이 없는 하람이는 모르는 것은?
:CBV
,FBV
역시, 모든 코드에는 의미가 있는 법인데
세세하게 분석하려 하지 않고 코드 짜기에 급급한 것이 문제였다.
우선, 나의 상황을 분석해보자면 👇🏻 요로케 정리할 수 있다.
1) 나는 View를 상속받은 class를 작성하고 있는 상황인 것..!
2) 각 기능에 따른 메서드를 구현하고 싶은 것..!
3) 각 메서드는 웹 브라우저와 POST 방식으로 통신해야 하는 상황..!
view의 속성, 구조에 대한 이해가 없어서 벌어진 해프닝이었다..!
CBV
에 대한 설명..!Introduction to class-based views
잘 읽어볼 것..!
어느 경우에 매개변수이고, 어느 경우에는 인수라고 해야 하는가?
(이제 잘 알겠지..? 💕)