有人可以描述这是什么吗?ruby-on-rails路由中的限制
它在路由文件:
match "photo", :constraints => {:subdomain => "admin"}
我无法理解这一点。
感谢
有人可以描述这是什么吗?ruby-on-rails路由中的限制
它在路由文件:
match "photo", :constraints => {:subdomain => "admin"}
我无法理解这一点。
感谢
它说,photo
路线将只承认和路由到一个控制器,如果请求中包含的子域admin
。例如,Rails应用程序将响应http://admin.example.org/photo的请求,但不响应http://example.org/photo。
我们的一位球员posted this today描述,如果你创建一个简单的类来评价真/假,你如何能重复使用不同的上下文中走相同的路线(在这种情况下,用户是否登录)
例如:
class LoggedInConstraint < Struct.new(:value)
def matches?(request)
request.cookies.key?("user_token") == value
end
end
然后,您可以使用路由的评估,以确定哪些路由应用:
root :to => "static#home", :constraints => LoggedInConstraint.new(false)
root :to => "users#show", :constraints => LoggedInConstraint.new(true)
很明显,你可以设计对你的需求有限制,但史蒂夫描述了几个不同的变体。
好的谢谢。但该路线使用哪个控制器和索引? – 2010-06-12 15:22:07
无论你想要什么。例如:'match'photo'=>'photos#show',:constraints => {:subdomain =>'admin'}' – 2010-06-12 15:38:26
但是在我发布的路由中没有指定控制器和动作? – 2010-06-12 20:07:59