gpt4 book ai didi

ruby-on-rails-3 - 保存前使用回形针图像

转载 作者:行者123 更新时间:2023-12-02 04:07:09 24 4
gpt4 key购买 nike

我正在使用Rails中的Paperclip保存图像上传,效果很好。

  has_attached_file :image, :styles => {
:small => "80x90#"
}
然后,当创建模型时,我要在模型中将小图像的副本另存为base64编码的字符串。
  before_update :encode_image

private

def encode_image
self.base64 = ActiveSupport::Base64.encode64(open(self.image.path(:small)).to_a.join)
end
如果先前已保存图像,则上面的代码可在更新时有效。我将这种逻辑应用于在保存模型之前但在处理图像之后触发的回调。
我曾经以为 after_post_process是我的救星,但是路径在此时并没有完全形成(缺少ID)。
我想念什么?
丰富
解决方法
我的解决方法是执行以下操作,但是每次更新模型时似乎都对例程进行编码很可惜:
  after_save :encode_image

private

def encode_image
unless self.image.path(:small).blank?
b64 = ActiveSupport::Base64.encode64(open(self.image.path(:small)).to_a.join)
unless self.base64 == b64
self.update_attribute :base64, b64
end
end
end

最佳答案

我的解决方法是执行以下操作,但是每次更新模型时似乎都对例程进行编码很可惜:

  after_save :encode_image

private

def encode_image
unless self.image.path(:small).blank?
b64 = ActiveSupport::Base64.encode64(open(self.image.path(:small)).to_a.join)
unless self.base64 == b64
self.update_attribute :base64, b64
end
end
end

关于ruby-on-rails-3 - 保存前使用回形针图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7041760/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com