微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ruby-on-rails – 路由如何在rails中工作

在我的路线文件中,我有一些如下的路线.这意味着什么?我看了rails路线指南,但我找不到=>的解释和foo:’酒吧’

get '/clients/:status' => 'clients#index',foo: 'bar'

请解释一下这意味着什么?

解决方法

首先,我假设您的Web服务器正在主机上运行并且端口为localhost:3000.但是那部分并不重要 – 无论主机和端口是否获得对Rails的请求都是一样的.

get '/clients/:status' => 'clients#index',foo: 'bar'

如果您不熟悉Ruby语法糖,这相当于:

get({'/clients/:status' => 'clients#index',:foo => 'bar'})

从这里,让我一块一块地分解:

> get表示路由仅适用于“GET”HTTP请求.
>’/ clients /:status’表示将此路由应用于http:// localhost:3000 / clients /:status的请求:status是任何字符串
> => ‘clients #index’告诉Rails它应该调用ClientsController的索引方法中的代码.
>:foo => “bar”可能在你想要做的事情中更有意义(如vee提到的那样),但在这种情况下,(我认为)它将被添加为可在ClientsControllersindex`方法中访问的params散列中的值.

有关更多信息,请查看路由上的Rails指南.这是Rails文档中最好的部分之一,恕我直言:

http://guides.rubyonrails.org/routing.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐