rails文档中描述了一个知识,link_to方法用于产生链接,但链接是根据routes.rb中的路由规则来产生的。这又分为面向资源和非面向资源两种产生链接的方法。比如
routes.rb文件中有两条规则
resources :users
get 'cont/act/:name',:to => 'controller#action'
相对应如果两个link_to如下:
<%= link_to "测试resource路由",:controller=>:users,:action => :show,:id => 1 %>
<%= link_to "测试非resource路由",:controller => :controller,:action => :action ,:id => 1%>
产生的链接为:
<a href="/users/1">测试resource路由</a>
<a href="/cont/act/1">测试非resource路由</a>
注意,第一个链接不是users/show/1,证明产生的链接是根据routes.rb区别了面向资源和一般路由两种方法来产生的。