2016-09-09 4 views
1

AnonymousUser 대신 User 클래스의 사용자 지정 인스턴스를 전역 적으로 제공 할 수있는 방법이 있습니까? User이 예상되는 경우AnonymousUser 대신 로그인하지 않은 경우 '기본'사용자 제공

그것은 AnonymousUser 인스턴스를 할당 할 수 없습니다 (형태, 예를 들어,이 인증 등을 점검 할 필요가있다), 따라서 이름을 가진 일반 User 클래스를 가진 '익명'(그래서 DB에서 검색 할 수 있습니다.) 인증되지 않은 사용자가 페이지를 방문하면 전역 적으로 반환됩니다. 어떻게 든 사용자 정의 인증 메커니즘을 구현하면 트릭을 수행 할 수 있습니까? 또한이 아이디어가이 문제에 뛰어 들기 전에 표준 접근법인지 묻고 싶습니다.

답변

1

사용자가 로그인했는지 여부를 확인하는 사용자 정의 미들웨어 (AuthenticationMiddleware 이후에 호출 됨)를 생성 할 수 있으며, 그렇지 않은 경우 요청에 첨부 된 현재 사용자 객체를 원하는 사용자로 바꿉니다.

관련 문제