rails notidentifiedbyimagemagickerror missingrequiredvalidatorerror errors ruby-on-rails ruby paperclip file-upload

ruby on rails - notidentifiedbyimagemagickerror - Cómo configurar una carga de archivo mediante programación utilizando Paperclip



rails gem upload file (3)

Tengo una tarea de rake para generar una aplicación con datos aleatorios utilizando la gema faker. Sin embargo, también tenemos imágenes (como logotipos) que queremos cargar en esta tarea de rake.

Ya tenemos configurada Paperclip, pero no tenemos una forma de cargarlas programáticamente en una tarea de rake. ¿Algunas ideas?


¿A qué te refieres con programación? Puede configurar un método que tomará una ruta de archivo a lo largo de las líneas de

my_model_instance = MyModel.new file = File.open(file_path) my_model_instance.attachment = file file.close my_model_instance.save!

#attachment proviene de nuestra declaración Paperclip en nuestro modelo. En este caso, nuestro modelo se parece a

class MyModel < ActiveRecord::Base has_attached_file :attachment end

Hemos hecho cosas similares a esto cuando se inicia un proyecto.


En realidad, no tuve que escribir un método para esto. Mucho más simple

En el modelo ->

Class Model_Name < ActiveRecord::Base has_attached_file :my_attachment, :params_for_attachment

En seed.db ->

my_instance = Model_name.new my_instance.my_attachment = File.open(''path/to/file/relative/to/app'') my_instance.save!

Quizás las respuestas anteriores significaron utilizar el nombre del archivo adjunto como se define en el modelo (en lugar de escribir un método Model_name.attachment). Espero que esto esté claro.


Hago algo como esto en una tarea de rake.

photo_path = ''./test/fixtures/files/*.jpg'' Dir.glob(photo_path).entries.each do |e| model = Model.find(<query here>) model.attachment = File.open(e) model.save end

¡Espero que esto ayude!