Rails - params的目的是什么[:commit]

时间:2014-04-30 08:15:12

标签: ruby-on-rails ruby-on-rails-3

我注意到每次将Rails表单发送到服务器时,提交按钮的名称(通常是按钮上显示的字符串)都包含在params哈希中作为“commit”。< / p>

例如(最后一个条目)

{"utf8"=>"✓",
 "authenticity_token"=>"eZABpBuW7afziDMUJtc1BNEKvGyI7NlTd9+NOYqnMxs=",
 "order"=>{"name"=>"marco",
 "email"=>"marwus@co.xa",
 "phone"=>"0839457382",
 "collection"=>"0",
 "address"=>"18 main street, paarl",
 "city"=>"paarl",
 "country"=>"South Africa",
 "zip"=>"7646",
 "instructions"=>""},
 "terms"=>"on",
 "commit"=>"Next: 3. Payment"}

这是为了什么目的?

是不是我错误地格式化表单?

以下是此特定示例的提交按钮,取自我的form_for

<%= f.submit 'Next: 3. Payment', :class => 'right button' %>

(班级right button来自foundation表格。

1 个答案:

答案 0 :(得分:10)

它可以区分推送哪个提交按钮。如果你有非常不同的行为,可能会有用:

  • 保存草稿
  • 公布