내가이 (여기 진작을 사용) 오이에 어떻게 적용되는지 잘 모르겠지만, 다른 몇 가지 권장 사항을 시도한 후,이 안정적으로 작동 할 나타납니다
def in_subdomain(str)
# test.host == default testing domain, feel free to change to match your usage
@request.host = "#{str}.test.host"
end
그리고 다음을 이전 get
전화로 당신을 단지 당신이 in_subdomain('subdomain-fuuuuuu')
인지 확인해야합니다. URL과 current_subdomain
을 적절히 설정하면 하위 도메인의 하위 도메인 체류를 지정하지 않고 리디렉션되고 다른 하위 도메인 (또는 :subdomain => false
)으로의 리디렉션은 여전히 올바른 redirected_to 값을 설정합니다. 모든 것 모두를 확인하지 않았습니다.
이 (고품질, 당신이 말할 수있는 확신) 예를 들어, 패스 테스트, 그들은 컨트롤러에 current_subdomain에 수표를 가지고 :
should "show on the owner's subdomain" do
in_subdomain(@user.domain)
get :show, :id => @user.things.first.id
assert_response :success
end
should "not show on another users' subdomain" do
in_subdomain(@random_user.domain)
get :show, :id => @user.things.first.id
assert_redirected_to user_url(@random_user, :subdomain => @random_user.domain)
end
should "not show on a non-existent subdomain" do
in_subdomain("cthulhu-fhtagn")
get :show, :id => @user.things.first.id
assert_redirected_to root_url(:subdomain => false)
end
이 많이 좋아 보이는, 감사합니다! 나는 그것에 만족하지 않고 있지만, 지금까지 본 것이 최선입니다. –