我想知道它们之间的区别。
get "public/show"
get "public#show"
get "show/:something", :to => "public#show"
谢谢, Mezbah
答案 0 :(得分:2)
1)公开/表演 由于您没有指定控制器或操作,Rails使用它的约定将URL“public / show”映射到PublicController的show动作。
2)public#show
这不是有效路线。
3)显示/:某事
您在URL中定义了一个名为“something”的参数。这意味着诸如“show / dog”和“show / cat”之类的URL将调用PublicController的show动作。您可以通过在控制器中使用params [:something]将参数作为字符串(“cat”或“dog”)获取。
Rails文档非常好。有关路由的更多信息的良好来源:http://guides.rubyonrails.org/routing.html