Attachment_fu または Rails3 用ペーパークリップ
-
10-10-2019 - |
質問
Rails3 にアップグレードしたところですが、通常のattachment_fuプラグインをインストールすると失敗しました。それでグーグルで調べ始めたところ、rails3のバージョンをなんとか見つけることができましたが、rails3を使ったペーパークリップについて話している人はもっとたくさんいるようでした。
それではまず、ペーパークリップの利点は何でしょうか?
Rails3 のサポートは改善されていますか?
解決
どちらでもない。使用 搬送波 .
ファイルのアップロードを処理するために、Paperclip から CarrierWave に切り替えました。Paperclip は、私が扱う多くのアプリケーションでこれまで (そしてこれからも) 役に立ちますが、CarrierWave が採用するモジュール式のアプローチには本当に感謝しています。どの人気の S3 クライアントを使用するかに依存せず、aws/s3 と right_aws の両方をサポートします。また、ORM に依存せず、Active Record と密接に連携していません。Paperclip の緊密な結合は、私たちに職場での悲しみを引き起こしており、Paperclip の aws/s3 と right_aws のサポートの状態についても混乱しています。それで、私はこの新しいプロジェクトを見つけてうれしく思いました。そして、メンテナーの Jonas Nicklas は非常に敏感で親切な人のようで、それは常に良いことです。コードは素晴らしく、これまでのところこのライブラリを簡単に操作できています。(から: http://trevorturk.com/2010/2/8/kzak-an-open-source-web-based-jukebox/)
詳細はこちら:
他のヒント
Attachment_fu Rails3を互換性のあるものにしました。
見る https://github.com/mihael/attachment_fu
編集:しかし、一部のユーザーにとっては壊れており、私はそれをさらに維持していないので、自分でハックしたくない場合は他のソリューションを調べてください;)
私が取り組んでいるプロジェクトのために、Rails3.0.3を備えたPaperClip vs CarrierWave vs Attachment_Fuをテストしました。
ここのところ attachment_fu いつも同じように非常にうまく機能しますが、コードにはコールバックシステムを使用してリファクタリングする必要があります。クラウドファイルのバックエンド、S3があります。
ペーパークリップ また非常に優れており、非常に使いやすいです。基本的なセットアップでは、映画をアップロードすることはできませんでした(オプションを追加する必要がありました:whiny => false)。これが私がそれをした方法です:
class Asset < ActiveRecord::Base
has_attached_file :file, :styles => { :small => "300x300>", :thumb => "50x50>" }, :whiny => false
before_create :sanitize_file_name
private
def sanitize_file_name
self.file.instance_write( :file_name, file_file_name.gsub(/[^A-Za-z0-9\.\-]/, '_'))
end
end
PaperClipにはS3バックエンドがありますが、クラウドファイルのバックエンドが組み込まれていません。 Rails2.3.5用に構築されたそのためのPaperClipフォーク(Google for PaperClip-Cloudfiles)があります(PaperClip_DemoのGithubを検索)。
キャリアウェーブ 分離されたアーキテクチャではとても素敵に見えますが、オブジェクトの更新や破壊のものを削除せず、ディスクに多数のファイルとディレクトリを残しているという事実は好きではありません。基本的なCarrierWaveのセットアップも映画をアップロードできませんでしたが、ファイル名をうまく消毒しました。私はこれについて簡単な修正を見つけていませんでした。 MongoidとGridfsを使用している場合、CarrierWaveがサポートを構築しています。
最後に、私は自分のプロジェクトのためにPaperClipを取りました。
Rails 3.2以降で使用し続けたい場合は、Attachment_FUの宝石を作成しました。
トンボ 本当にいいです。試してみてください。ファイルと画像を処理できます。