2017-10-19 3 views
1

저는 건물에있는 레일 앱에서 devise를 사용하고 있습니다. 내보기에서 매개 변수로 전달하지 않고 현재 컨트롤러에 current_user.id로 로그인 한 사용자의 ID를 얻고 싶습니다. 내가 이것을 할 수있는 방법이 있습니까? 감사합니다rails 컨트롤러에서 current_user devise 메소드에 액세스

+3

필자는 'current_user.id'를 사용해 보았습니까? –

+0

@ Sebastián Palma 그래, 내가 시도하고 tihs 오류가있어 : 정의되지 않은 메소드 'id'for nil : NilClass – RT5754

답변

2

Devise를 올바르게 설치했는데 Devise 컨트롤러를 재정 의하여 무언가를 깨지 않았다면 컨트롤러에서 current_user.id에 액세스 할 수 있어야합니다. 이 메소드는 user_signed_in? 메소드로 테스트 할 수있는 사용자가 로그인 한 경우에만 작동합니다. 마지막으로, 이것은 Devise가 사용하고있는 자원 이름이 실제로 user이라고 가정합니다. 이는 기본값이지만 다른 리소스 이름을 사용하도록 Devise를 구성 할 수 있습니다.

+0

이 레일을 사용하는 초보자 용 앱 : https://github.com/RailsApps/rails-devise – RT5754

+0

@ RT5754 : current_user' 메소드는 연결된 초보 앱의 모든 컨트롤러에서 사용할 수 있어야합니다. –

+0

새 컨트롤러를 만든 경우 tehese 메서드에 액세스하려면 devise 또는 무언가를 포함해야합니까? – RT5754

관련 문제