REST && RAILS

本文介绍了在Rails框架下实现RESTful风格编程的方法,包括路由、辅助方法及资源格式等方面的内容,并详细解释了各种HTTP方法的应用场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

花了几天时间学习了一下rails下的REST. 现在把自己的理解记录下来,以备后用。

REST不用说了,网上一堆介绍。rails对REST的支持主要体现在route,helper,resouces format几个部分。由于之前对route不是特别了解,我对REST的疑问也主要是在这部分的。REST风格的程序简化了URL长度,这中简化是通过增加对资源的请求方式来实现的,非REST的HTTP method 只有post和get两种。 REST需要4种,增加了put和delete。

我理解的REST的好处: 代码简洁,开发效率很高 ,SEO

1 route部分rails的支持。
rails有种好东西named route。之前由于对route部分不是很清楚,花费了很多时间理解这部分。先说一下named route。常见的route是这样的。
map.connect ':controller/:action/:id'

应该很多人都明白的。看一个named routed的
map.apple :cotroller => "apple",:action => "eat"

在view中就可以以下这么用
<%=link_to "eat",apple_url(1)%>

我理解的产生的url应该是这个样子的
“/apple/eat/1”


ok!
RESTful的rails的route.rb中会有这样的代码出现
map.resources :somethings
map.resource :other_thing

我理解的是 复数 及 资源s
单数 即 资源
map.resources :as do |a|
a.reources :b
end


嵌套路由 够吓人吧
不过功能也awsome

2 helper method
map.resources :somethings 会产生这样的helper
somethings_path
something_path
:
:

map.resource同上

map.resources :as do |a|
a.reources :b
end


会产生
a_b_path

等价于
/a/:a_id/b


3 由scaffold_resource 生成的controller会有一下几个方法
index,show,new,edit,update,destroy,create
edit,new比较特殊,不属于CRUD中的。其实是不会产生数据库操作的 method => get, url => new/edit_something_path
index method => get ,url => somethings_path
show method=>get ,url => something_path
update method => put ,url => something_path
create method => post,url => something_path
destroy method => delete ,url => something_path


就这么多吧 参考资源google,ActionController::Resouce
另外现上电子书一本。作者你要是觉得不公平我就拿下来 。 估计你也看不懂这篇帖子。



scaffold_resources好像已经过时了。 未完。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值