2011-12-15 38 views
28

Cuando intento cargar una imagen usando Paperclip joya Tengo este error:método no definido `stringify_keys'

NoMethodError (método no definido` stringify_keys' para < ActionDispatch :: http :: UploadedFile: 0x000000025387f0 >)

class MenuItem < ActiveRecord::Base 
has_one :image 


end 

class Image < ActiveRecord::Base 
belongs_to :menu_item 
has_attached_file :image, :styles => { 
      :large => "640x480", 
      :medium => "300x300", 
      :thumb => "100x100" 
      } 
end 
+0

No hay mucho que seguir ... tal vez algunos detalles. –

+0

posible duplicado de [método no definido \ 'stringify \ _keys! ' ruby on rails] (http://stackoverflow.com/questions/1815697/undefined-method-stringify-keys-ruby-on-rails) – givanse

Respuesta

73

que he visto suceder este error antes, por lo general cuando las personas intentan llamar update_attributes así:

update_attributes(params[:image]) 

La llamada debe ser en realidad esto:

update_attributes(:image => params[:image]) 

Un poco de un tiro en la oscuridad, pero si eso es lo que estoy seguro de que todos estaremos impresionados.

+1

Esto también me sirvió, excepto que estaba usando build() en lugar de update_attributes(). Gracias :) – fholgado

+0

@RyanBigg ¿Pueden explicar el problema? Tengo un problema similar al cargar un archivo zip que creo a través de Submission.uploaded_file = params [: submission]. Las claves de Stringify solo suceden cuando tengo activada la gema CanCan. – BookOfGreg

+1

¿Podría el OP marcar esto como la respuesta correcta? Esto solucionó mi problema también. – battlemidget

1

Después de luchar durante un tiempo en los carriles 3.2.2 logré solucionar esto de esta manera

(image = Image.new(image: params[:image])).save

update_attributes(image: image)

0

acabo de tener este problema, y ​​para aclarar un poco las cosas, update_attributes es diferente de update_attribute.

El siguiente debería funcionar:

update_attributes(:image => params[:image]) 

o

update_attribute(:image, params[:image]) 

Hay que ir! Hay otros problemas con los atributos_actualización relacionados con attr_accesible, pero cualquiera funciona.

Cuestiones relacionadas