REST && RAILS

花了几天时间学习了一下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 ther_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好像已经过时了。 未完。

你可能感兴趣的:(java,apple,REST,Google,Rails)