2017-01-19 2 views
-4

admin 사용자가 로그인하여 로그 아웃 할 때 변경하려고합니다. 그것이 가능하고 어떻게 할 수 있습니까?heroku의 설정 var을 내 레일 앱에서 변경하십시오.

+0

관리자가 로그인 할 때 글로벌 구성 변수를 변경하려는 이유는 무엇입니까? 달성하려는 것은 무엇입니까? – spickermann

+0

관리자가 기록되지 않으면 앱에 사용자에게 메시지가 표시됩니다. 이것이 끔찍한 일인지 나는 모른다. 그렇지? –

+0

데이터베이스, Redis 또는 Memcached에 해당 정보를 저장하지 않는 이유는 무엇입니까? 또한 관리자가 온라인 상태인지 결정하려면 어떻게 계획합니까 (정기적 인 페이지를 다시로드하지 않고)? – spickermann

답변

0

ENV 해시를 통해 환경 변수를 변경할 수 있습니다.

def logout_admin 
    ENV["ADMIN_LOGGED_IN"] = false 
end 

이 인증을 할 수있는 일반적인 방법은되지 않습니다 :

는 예를 들어, 로그 아웃 버튼을 클릭 할 때 호출되는있는이 같은 방법을 사용할 수 있습니다. 보통 사람들은 데이터베이스에서 세션 토큰을 사용합니다. 실제로 전역 변수와 동일한 ENV 해시를 사용할 수 있습니다 (어쨌든 레일스 응용 프로그램을 재부팅해도 지속되지 않습니다).

관련 문제