2011-08-29 6 views
0

En essayant de permettre à l'utilisateur de mettre à jour les attributs pour une seule colonne pour plusieurs éléments en fonction d'une liste déroulante (avec name="status) mais je continue à récupérer l'erreur: undefined method 'update_attributes'. Aucune suggestion?Méthode non définie update_attributes?

def supdate 
     @input_messages = InputMessage.find(params[:message_ids]) 
     respond_to do |format| 
      if @input_messages.update_attributes(:status => params[:status]) 
      format/html { redirect_to :action => "show" } 
      end 
     end 
    end 

Répondre

2

En supposant que votre valeur params[:message_ids] est un tableau, alors @input_messages sera un tableau de résultats au lieu d'un seul objet ActiveRecord. Vous devrez peut-être faire quelque chose comme ceci:

@input_messages.each do |input_message| 
    input_message.update_attributes(:status => params[:status]) 
end 
+0

Grattez mes commentaires précédents (effacés), a fonctionné parfaitement! –