Ruby on rails 更新时无引用

Ruby on rails 更新时无引用,ruby-on-rails,callback,paperclip,Ruby On Rails,Callback,Paperclip,我正在尝试让回形针与MiniExiftool一起工作 我终于写下了: # 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

我正在尝试让回形针与MiniExiftool一起工作

我终于写下了:


# 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
我得到:

Mysql::Error: Column 'user_id' cannot be null ... Mysql::错误:“用户id”列不能为空。。。 没有拯救!所有这些都可以正常工作,但self.date仍然为null(即使exif['date\u time\u original']不为null)


我真的很沮丧。如何使用MiniExiftool使用回形针?

不确定,但您可以检查exif['date\u time\u original'] 正在给您一个日期或字符串,如果是字符串,是否可以正确解析

您也可以尝试使用

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

self.date = exif['date_time_original']
save!
这将绕过验证,只保存更新的属性