`

rails批量更新

阅读更多
rails批量更新
ruby 代码  user_controller.rb
  1. begin 
  2.  User.transaction do  
  3.    User.update(params[:user].keys,params[:user].values)   
  4.   end  
  5. end
  6.    
rails 提供的批量更新update方法,返回一个对象数组,并不好判断保存数据是否执行成功,以下代码可以判断
ruby 代码
  1. begin     
  2.   User.transaction do     
  3.     params[:user].each do |id, value|      
  4.       user= User.find(id)      
  5.       user.update_attributes!(value)      
  6.     end     
  7.   end     
  8.   flash[:notice] = "保存数据成功"     
  9. rescue     
  10.   flash[:notice] = "保存数据失败"     
  11. end     
xml 代码
这是 user.rhtm
  1. <% for @user in @users%>    
  2.  <td><%= text_field("user[]","name",'size'=>'10')%>td>  
  3.   <td><%= password_field("user[]","password",'size'=>'10')%>td>  
  4.   <td>
  5.   <%=   
  6.     select("user[]","city_id",@cities.collect{|p|[p.city,p.id]},options = {:include_blank => true})   
  7.    %></td>  
  8. <% end %>  
第6行返回一个下拉列表,用于显示所有可供选择的城市
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics