ぷっちん日記
2007-12-08 (土) image_upload plugin [長年日記]
■ image_upload plugin
伊藤忠商事のTLab(Web系先端技術部隊)で開発された image_upload プラグインを RubyForge にて公開しています。昨日、ちょうどタイミングがよかったのでクックパッドさんの 第2回 Ruby on Rails ライトニングトークにて発表させていただきました。
http://imageupload.rubyforge.org/
どういうプラグインかというと、画像をかっこよくアップロードするプラグインです。通常の file input field だと、submit して次ページに遷移しないとアップされた画像を見ることができませんが、このプラグインだと、ファイルを選択した時点で一時的な領域にアップロードされてふわ〜っと表示されます。もちろんその時点ではまだDBには反映されません。
また、DBに格納済の画像の削除も、submitを押さない限り反映されない(Railsで素直につくると即時削除になりますが)など、統一感のある仕様となっています。
ほかの特徴としては、モデルの自由度が高いと思います。image_uploadでは、画像をつけたいモデルにカラムを増やすことで対応する file_column と違って、画像をつけたいモデルとは別の専用の画像用モデルを用意します。画像をつけたいモデルとはポリモーフィック関連で関連がはられます。1つの親モデルに複数の画像をつけたり、画像そのものにタグやコメントをつけるなどの展開が容易です。
その他もろもろの特徴は上記URLのドキュメントにあります。(日本語ドキュメントもありますので上のリンクからいってください。)
興味を持たれた方はぜひお試しください。
なお、単体テストが弱点ですが、未来と手助けに期待というところであります。また、Rails2.0ではまだ試していないので来週やってみようと思います。
と書いていて思いついたのですが、パフォーマンス上はポリモーフィックにしない選択肢もあってよさそうですね。issueにしようかな・・。