meg*_*ger 12 ruby routes ruby-on-rails
我生成了一个控制器并更改了路由,但打开链接会在本地服务器上产生错误.
生成控制器和路由
rails generate controller StaticPages home about team contact
Run Code Online (Sandbox Code Playgroud)
改变routes.rb
MyApp::Application.routes.draw do
root to: 'static_pages#home'
match '/about', to: 'static_pages#about'
match '/team', to: 'static_pages#team'
match '/contact', to: 'static_pages#contact'
end
Run Code Online (Sandbox Code Playgroud)
根路径有效,但"关于","团队"或"联系"链接都不起作用.这是我得到的错误:
"如果match不指定HTTP方法,则不应在路由器中使用该方法.如果要将操作公开给GET和POST,请添加via: [:get, :post]选项.如果要将操作公开给GET,请get在路由器中使用:而不是:匹配"控制器#动作"做:得到"控制器#动作""
为什么我不能使用'匹配'?
Jas*_*Kim 27
使用get了GET和post为POST.
get '/about', to: 'static_pages#about'
小智 13
你可以使用match,你必须添加一个via:选项:
match '/about', to: 'static_pages#about', via: :get
match '/team', to: 'static_pages#team', via: :get
match '/contact', to: 'static_pages#contact', via: :get
Run Code Online (Sandbox Code Playgroud)
via:如果需要,您也可以传递其他HTTP动词via: [:get, :post]
来源:Rails路由指南
| 归档时间: |
|
| 查看次数: |
20342 次 |
| 最近记录: |