tutorial rails imagenes active ruby-on-rails ruby-on-rails-3 console paperclip

ruby on rails - imagenes - Paperclip: ¿Cómo almacenar una imagen en la consola de Rails?



storage rails (4)

Intenté almacenar una imagen local en una consola de rieles.

Debido a que tengo muchas imágenes en mi almacenamiento local (uso el rastreador para descargar toneladas de imágenes), quiero almacenarlas en una base de datos, con el beneficio de un clip para hacer un trabajo de imagen, como una miniatura, etc. Si utilizo una página web para guardar nuevas imágenes en la base de datos, una por una, le costará mucho tiempo. Así que quiero encontrar un camino en la consola de rieles (algún código) que pueda guardar por lotes-imagen-en-base de datos.


No sé si es lo que quieres ... pero para guardar un activo de clip desde la consola. Puedes usar una instancia de archivo. ae

Image.new :data=>File.new("/path/to/image.jpg","r")


Para aclarar aún más la respuesta de @andrea:

YourPaperclippedModelHere.new(:your_paperclip_field => File.new(path, "r"))

Entonces, si su modelo se llama Imagen y su campo de clip es datos:

Image.new(:data => File.new(path_to_your_file, "r"))


Respuesta tardía pero con suerte funcionará para otros. Debes incluir

File.new("#{Rails.root}/public/images/default_avatar.png", "r")


Si este es el modelo:

class User < ActiveRecord::Base has_attached_file :avatar end

entonces lo siguiente debería funcionar desde la consola:

>> User.create(:avatar => File.open(''/path/to/image.jpg'', ''rb''))