我是一个新手,轨时遇到一些困难......在单个提交中更新多个记录? - Rails的3
我有一个表显示的记录列表的页面,并且希望用户能够作出修改,提交表单,运行验证并保存数据。
这是我到目前为止有:
查看:
- @people.each do |p|
%tr
%td
%input{:type => "hidden", :name => "person_id[]", :value => p.id}
%input{:name => "firstname[]", :value => p.firstname}
%td
%input{:name => "lastname[]", :value => p.lastname}
实例参数被传到控制器:
"person_id"=>["12", "13", "14"],
"firstname"=>["john", "joe", "mary"],
"lastname"=>["smith", "bloggs", "jane"],
在这一点上我很害怕,因为我不再绑定到活动记录。相反,我觉得自己想编写一些乱七八糟的代码来循环访问person_id数组,以查看发生了什么变化并写回任何更改。
这感觉不好,因为我必须明确地比较每个字段,如果由于验证错误导致某些内容失败,我应该如何回滚所有更改并向用户显示消息?
我希望由于我的轨道无知这整个方法是错误的,我错过了一个把戏。有没有人有任何建议如何解决这个问题?
看看http://stackoverflow.com/q/5583568/800526的答案 - 更具体地http://railscasts.com/episodes/198-edit-multiple-individual?view=asciicast –