Ruby on rails 如何正确定义rails应用程序的路由?
我遵循的是,首先Ruby on rails 如何正确定义rails应用程序的路由?,ruby-on-rails,routes,Ruby On Rails,Routes,我遵循的是,首先config/routes.rb文件包含以下内容: SampleApp::Application.routes.draw do get "pages/home" get "pages/contact" get "pages/about" get "pages/help" ... 现在,在教程中,它声明它包含以下内容 SampleApp::Application.routes.draw do match '/contact', :to =>
config/routes.rb
文件包含以下内容:
SampleApp::Application.routes.draw do
get "pages/home"
get "pages/contact"
get "pages/about"
get "pages/help"
...
现在,在教程中,它声明它包含以下内容
SampleApp::Application.routes.draw do
match '/contact', :to => 'pages#contact'
match '/about', :to => 'pages#about'
match '/help', :to => 'pages#help'
.
.
.
end
我使用了上面的方法,但似乎不起作用。正确的路由定义是什么?匹配和获取都是有效的路由定义。我建议使用get-through
get "/home" => "pages#home"
这将把uri/home路由到控制器页面,操作将返回主页。但仅适用于GET请求 您可以这样做,例如:
post "/home" => "pages#create_home"
如果使用匹配:
match "/home" => "pages#home"
这将把uri/home路由到控制器页面,操作为home。但是对于所有的HTTP动词,不仅仅是GET
请看一下rails指南:两者都正确有效。请通读以了解更多信息。也许,您正试图访问不再工作的
'/pages/contact'
,您只需通过'/contact'
访问该页面