2012-06-30 1 views
0

으로 발사하지.유증의 find_for_authentication 내가 두 유증 모델이 여러 인증 키

나는 또한

def self.find_for_authentication(conditions={}) 
    debugger 
    conditions[:account_id] = Account.find_by_subdomain(conditions.delete(:subdomain)).id 
    super(conditions) 
    end 

authentication_keys 여러 개의 키가 불행하게도, 내 find_for_authentication 방법은 발사하지 않는 것으로 오버라이드 (override)

devise :database_authenticatable, :registerable, 
    :recoverable, :rememberable, :trackable, :validatable, :omniauthable, :authentication_keys => [:email, :subdomain] 

Member.rb. 하나의 키만 지정하면 잘 작동합니다. 이견있는 사람?

답변

1

하위 도메인은 요청의 일부이므로 request_key 여야합니다.

request_keys => [:subdomain] 
+0

사실 서브 도메인은 request_key 여야합니다. 그러나 find_for_authentication이 작동하려면 authentication_keys가 필요하지 않으며 조건에서 하위 도메인에 계속 액세스 할 수 있습니다. – nachbar