2014-03-18 3 views

답변

1

사용자가 ApplicationController에 로그인했는지 확인하는 before_filter을 넣습니다. 이렇게하면 모든 컨트롤러와 모든 작업이이 조건에 따라 필터링됩니다.

before_filter :authenticate_user! 
+0

다른 컨트롤러에이 기능이 있습니다. 어떻게 두 필터에 대해 before_filter를 수행합니까? before_filter : signed_in_grandstreamer, [: edit, : update, : show] 및/또는 before_filter : signed_in_distributor 만 해당 : [: 편집 : : 업데이트] : 표시. 둘 다 로그인하지 않았기 때문에 오류가 발생합니다. – DDDD

+0

두 개의 필터에 대해 before_filter가 무엇을 의미하는지 이해할 수 있을지 확신 할 수 없습니다. 나열된 동작 중 하나를 수행 할 때 'signed_in_grandstreamer'이고 'signed_in_distributor'가 호출됩니다. 이러한 동작 이외의 작업을 수행하면 필터가 수행되지 않으므로 유효성이 검사되지 않습니다. 어쩌면 하나의 일반 필터가 필요하고, 로그인되어 있는지, 특정 종류의 사용자인지 등을 확인해야합니다. – MurifoX

0

당신은 저장할 수

당신이 devise 같은 것을 사용하는 경우, 사용자 정의 방법은 예를 들어, 그래서 코드는 다음과 같이합니다, 당신을 위해 이런 종류의 물건을 authenticate_user라는 이름의이 세션에 로그인 한 사용자의 ID 또는 기타 세부 정보를 볼 수 있으며이 Session 변수가보기를 표시하기 전에 null이 아닌지 확인할 수 있습니다.

관련 문제