首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >回形针:创建文件后触发的事件名称?

回形针:创建文件后触发的事件名称?
EN

Stack Overflow用户
提问于 2015-02-28 12:19:55
回答 2查看 215关注 0票数 1

我正在尝试删除一些动画GIF在他们被转换成MP4 --但是在文件系统中创建文件后触发的事件的名称是什么?

测试过的dgilperez's answer:在文件系统创建文件之前会触发after_post_process事件。

代码语言:javascript
复制
def on_after_post_process
      puts(self.attachment.path)
end

打印:

代码语言:javascript
复制
 => "/home/user/rails-repo/public/system/photos/attachments//original/file.gif"

但实际上该文件是在以下位置创建的:

代码语言:javascript
复制
 => "/home/user/rails-repo/public/system/photos/attachments/000/000/<id>/original/file.gif"

我也尝试了ActiveRecord的after_create事件。在这种情况下,文件路径是正确的,但文件尚未创建。

EN

回答 2

Stack Overflow用户

发布于 2015-02-28 20:51:03

the docs中,您可以使用after_post_process回调或更具体的after_<attachment>_post_process

票数 0
EN

Stack Overflow用户

发布于 2015-06-25 23:38:09

回形针在after_save回调中将附件保存到磁盘。after_saveafter_create之后发生,所以你不能使用after_create。您可以创建自己的after_save,并仅为新记录运行它:

代码语言:javascript
复制
  after_save :process_file
  def process_file
    # Don't do anything on update. new_record? is always true here.
    return if !id_changed?
    # XXX Do your business here
  end
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28778046

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档