attributes=
attributes=(new_attributes)
public
Allows you to set all the attributes at once by passing in a hash with keys matching the attribute names (which again matches the column names). Sensitive attributes can be protected from this form of mass-assignment by using the attr_protected macro. Or you can alternatively specify which attributes can be accessed in with the attr_accessible macro. Then all the attributes not included in that won’t be allowed to be mass-assigned.
Update attributes on mulitple models
Updates attributes on multiple models, saves each if validations pass.
def update_multiple @items = Item.find(params[:item_ids]) @items.each do |item| item.attributes = params[:item].reject { |k,v| v.blank? } end if @items.all?(&:valid?) @items.each(&:save!) flash[:notice] = "Updated items!" redirect_to items_path else flash[:notice] = "Please enter valid data." render :action => 'edit_multiple' end end

