【问题标题】:how to remove existing style dimensions in paperclip如何删除回形针中现有的样式尺寸
【发布时间】:2012-09-24 00:03:26
【问题描述】:

我知道你可以为回形针添加新样式,然后使用过程!强制回形针填充缺失样式的方法。但是,如果您想放弃不再使用的旧样式怎么办。

例如,我有 iphone 和 ipad 的样式,但我改变了主意,改为使用尺寸略有不同的 :large 和 :medium 代替 :iphone 和 :ipad。

由于我的应用程序位于 heroku 上,因此我将图像托管在 s3 上。我想删除 s3 上与 :iphone 和 :ipad 样式有关的所有文件夹。是否有删除选择样式的 rake 任务?

【问题讨论】:

  • 使用s3 GUI工具不是更简单吗?
  • 回形针无法做到这一点,只能重新生成/刷新新的或现有的样式。您应该能够使用 aws-s3 gem amazon.rubyforge.org 编写脚本
  • 我会整天都在使用 gui 工具。有300个带有图像的帖子。我希望有一个像 post.image(:ipad).delete 这样的方法,它反过来会从 s3 中删除文件。

标签: ruby-on-rails heroku amazon-s3 resize paperclip


【解决方案1】:

如果您指的是删除无效文件,请尝试:

rake paperclip:clean  # Cleans out invalid attachments.

您可以通过键入以下内容在控制台中查看所有回形针任务:

rake -T paperclip

【讨论】:

  • clean 任务还需要指定一个类。
【解决方案2】:

在终端中运行

rake -T paperclip

你可以这样看

...
rake paperclip:clean                    # Cleans out invalid attachments.
rake paperclip:refresh                  # Refreshes both metadata and thumbnails.
rake paperclip:refresh:metadata         # Regenerates content_type/size metadata for a given CLASS (and optional ATTACHMENT).
rake paperclip:refresh:missing_styles   # Regenerates missing thumbnail styles for all classes using Paperclip.
rake paperclip:refresh:thumbnails       # Regenerates thumbnails for a given CLASS (and optional ATTACHMENT and STYLES splitted by comma).
...

要刷新缩略图试试这个

rake paperclip:refresh:thumbnails class= Xyz # xyz replace with your class name

删除

rake paperclip:clean                    # Cleans out invalid attachments.

【讨论】:

  • clean 任务还需要指定一个类。
  • 是否可以为单次上传和直接从应用程序执行此功能?谢谢!
【解决方案3】:

您必须编写一个脚本来完成此操作,但回形针确实有一个 s3_object 方便的方法可以让这很容易:

obj = User.first.avatar.s3_object(:unwanted_style)
obj.delete if obj.exists?

你可以在你想要操作的任何对象的循环中放置这样的东西。

来源:

【讨论】:

    【解决方案4】:

    您可以使用Attachment#clear 方法。

    如果你想删除 thumbdisplay 样式,你可以运行类似:

    YourModel.find_each do |ym|
      ym.attachment.clear(:display, :thumb)
      ym.save!
    end
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-13
      • 2011-02-13
      • 1970-01-01
      • 1970-01-01
      • 2016-01-20
      • 1970-01-01
      相关资源
      最近更新 更多