Pregunta

Estoy tratando de conseguir Paperclip trabajar con MiniExiftool.

Finalmente escribí esto:


# Photo model

  belongs_to :user

  has_attached_file :picture

  after_picture_post_process :copy_exif_data

private

  def copy_exif_data
    exif = MiniExiftool.new picture.queued_for_write[:original].path
    self.date = exif['date_time_original']

    save!
  end

Me sale:

Mysql::Error: Column 'user_id' cannot be null ...

Sin alojamientos todo funciona bien, pero sigue siendo nula self.date (incluso si Exif [ 'date_time_original'] no es nulo).

Estoy muy frustrado. ¿Cómo puedo obtener Paperclip trabajar con MiniExiftool?

¿Fue útil?

Solución

No estoy seguro, pero es posible comprobar si Exif [ 'date_time_original']  le está dando una fecha, o una cadena, y si es una cadena, si puede ser analizada correctamente.

También puede intentar utilizar

update_attribute(:date, exif['date_time_original'])

en lugar de

self.date = exif['date_time_original']
save!

Esa voluntad de validación de derivación, y simplemente guardar el atributo actualizada.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top