• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

5:27초에서 blog.py의 logout() 데코레이터 함수에서 User.delete(current_user.id)에 대한 질문입니다.

21.09.25 22:27 작성 조회수 92

0

안녕하세요! 질 좋은 강의에 감사인사 드립니다. 질문 그대로 

5:27초에서 blog.py의 logout() 데코레이터 함수에서 User.delete(current_user.id)에 대한 질문인데요!

User.delete 인자로 해당 유저의 user_id를 찾기 위해 current_user.id를 사용하잖아요? current_user를 사용하는 이유가 current_user.user_email로 해당 유저의 이메일을 찾을 수 있는 것과 동일하게 동작하는 걸로 이해하면 되는거 맞나요? 

헷갈리는 점이 강의 5:27초에서 강사님께서 current_user의 id를 넣는 이유가 강사님 말씀에서는 주어를 명확히 해주시지 않아서 잘 이해는 안되는데 ㅜㅜ "이 속성이 id를 갖고 있잖아요?" 하면서 user_mgmt.py의 User 클래스 생성자 함수 인스턴스 변수인 self.id 를 보여주셨는데.. 이 말씀해주신 텍스트가 잘 이해가 안가서요..!  결국 current_user.id 와 User 클래스의 self.id 간의 관계?를 설명해주시면 감사하겠습니다! 혹시 질문이 명확히 이해가 안가신다면 답글 달아주시면 감사하겠습니다!

답변 1

답변을 작성해보세요.

1

current_user 는 flask_login 에 있는 기능으로, 로그인을 할 경우, 로그인한 사용자 관련 정보를 가져올 수 있는 객체를 지칭할 수 있습니다. self.id 에서 self 는 클래스 내에서, 자기 자신을 가리키는 객체이고요. 해당 클래스에 id 속성이 있어서 이를 가리키고 있고 있습니다. flask_login 을 구현할 시에는 UserMixin 클래스를 상속받은 클래스를 구현해야 하고, 해당 클래스에 id 속성을 가지고 있어야 합니다. 해당 클래스를 가지고 로그인을 하면, 해당 객체를 current_user 로 가리킬 수 있고, 그래서 id 속성을 가리킬 수 있습니다.

지금 설명드리는 부분들은 설명을 안드린 것이 아니고, 단계별로 모두 설명을 드린 부분이라서요. 단계별로 순차적으로 한번 들으신 후에, 자신이 직접 일정 단계의 완성된 코드를 보시면서, 당시 설명은 잊으신 상태에서, 특정 영상만 보신 후에, 바로 기존 단계별 설명을 다시 문의를 주신 것같습니다. 제 생각에는 이보다는 영상을 순차적으로 보시면서 단계별로 코드를 작성해보면서, 코드를 이해해보려 해보시는 것이 훨씬 역량을 쌓는데, 도움이 될 것 같습니다.

답변 감사드립니다. 단계별로 듣고 있는데, 중간에 텀이 길어져서 그랬던 것 같네요! 회고 감사드립니다!