4

ペーパー クリップに新しいスタイルを追加して、プロセスを使用できることを知っています。ペーパークリップに不足しているスタイルを強制的に埋めるメソッド。しかし、もう使用していない古いスタイルを捨てたい場合はどうすればよいでしょうか。

たとえば、私は iphone と ipad のスタイルを持っていますが、考えを変えて、:iphone と :ipad の代わりに、わずかに異なる寸法の :large と :medium を使いたいと思いました。

特に、私のアプリはherokuにあるので、s3で画像をホストしています。:iphone および :ipad スタイルに関連する s3 のすべてのフォルダーを削除したいと思います。選択したスタイルを削除するためのレーキ タスクはありますか?

4

4 に答える 4

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.
于 2012-10-03T09:40:10.307 に答える
2

無効なファイルの削除について言及している場合は、次を試してください。

rake paperclip:clean  # Cleans out invalid attachments.

次のように入力して、コンソールですべてのペーパークリップ タスクを表示できます。

rake -T paperclip
于 2012-10-03T07:22:05.843 に答える
0

これを行うにはスクリプトを作成する必要がありますが、paperclip にはs3_objectこれを簡単にする便利なメソッドがあります。

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

操作したいオブジェクトのループ内にこのようなものを配置できます。

ソース:

于 2016-10-06T23:58:02.690 に答える