Rails3深入理解routes之一 - routes的目的

rails routes(路由)的目的是匹配URL和控制器之间的联系。同时也会产生一些路径,可以在视图中直接使用。

1.1 连接URL到代码

当你的rails接受到以下的request请求

GET /patients/17
他会询问rails的routes来匹配到对应的控制器。如果第一次的routes是

这样的。

match "/patients/:id" => "patients#show"

他将会调用 patients控制器的show方法,同时参数中 包含{ :id => “17” }

1.2 从代码中产生路径和URL

如果你的代码如下

@patient = Patient.find(17)

<%= link_to "Patient Record", patient_path(@patient) %>

rails的routes会产生 /patients/17。这将会使你的view伸缩性更加好,而且会让你的代码更容易

理解。你会注意到id在routes不需要特别指定。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值