form_for的疑问.

form_for的疑问.

有如下脚手架生成的
edit页面

[Copy to clipboard] [ - ]
自動生成的腳手架 是rails 約定的action
新規記錄就是 new 更新就是 update 。。
你看controller中就知道了
你也可以自己寫方法。請參照rails的API

eg:
<% form_for :person, :url => { :action => "update" } do |f| %>
  <%= f.error_messages %>
  First name: <%= f.text_field :first_name %><br />
  Last name : <%= f.text_field :last_name %><br />
  Biography : <%= f.text_area :biography %><br />
  Admin?  : <%= f.check_box :admin %><br />
 <% end %>
首先要了解的是 REST 的概念,然后需要了解 Rails 对 REST 的理解。

接下来,这个问题就不是问题了,关键在于这个 FORM 的提交方式。REST 认为:
PUT 表示创建一个新的资源
POST 表示修改一个既存的资源
DELETE 自然表示删除

所以,因为当前的表单 method="post" ,那么 Rails 的 RESTful Route 会转到 controller 的 edit
引用:
原帖由 Hozaka 于 2008-8-19 20:04 发表
所以,因为当前的表单 method="post" ,那么 Rails 的 RESTful Route 会转到 controller 的 edit