2011-12-06 2 views
5

내 앱에 레일스 엔진이 있습니다.레일스 엔진의 경로에 대한 액세스 제한 ... 작동하지 않는 제약

class EditorRestrictor 
    def self.matches?(request) 
    false 
    end 
end 

constraints EditorRestrictor do 
    Mercury::Engine.routes 
end 

을하지만 엔진의 노선들은 여전히 ​​액세스 할 수 있습니다 : 나는 그래서 제약 조건을 사용하여 시도 엔진에서 제공하는 URL에 대한 액세스를 제한하기 위해 노력하고있어

Mercury::Engine.routes 

: 여기의 훅 내 routes.rb 파일에 있습니다. 나는 단지 내 애플 리케이션을 재시작했지만 그것은 중요하지 않았다. 어떤 아이디어?

답변

1

일반적으로이처럼 엔진 경로를 마운트 것 :

Rails.application.routes.draw do 
    mount Mercury::Engine => '/mercury' 

    # If you wanted routes mounted on root 
    # mount Mercury::Engine => '/'  
end 

을 그래서 당신은 제약 조건을 추가하려는 경우, 당신은 말할 수 :

Rails.application.routes.draw do 
    mount Mercury::Engine => '/mercury', constraints: {} 
end 
관련 문제