Menu

Category

Archive

logo


Paperclipのpath/urlでモデルカスタムのアトリビュートを使う

2014-09-02 22:00:00 +0900
  • このエントリーをはてなブックマークに追加

Paperclipで画像が保存されるpathや外部から参照されるurlにおいて、独自のアトリビュートを使用する方法。

Paperclip.interpolates

下記のコードをモデルクラスのファイル等に追加。

1 # To use string id for the path/url
2 Paperclip.interpolates :lesson_identifer do |attachment, style|
3 "#{attachment.instance.lesson_identifer}"
4 end

:lesson_identifer が、path/urlで使いたいモデルのアトリビュート。

1 # For catcher image
2   has_attached_file :catcher,
3                     :styles => {
4                         :big  => "2000x798",
5                         :medium => "1000x399"
6                     },
7                     :path => ":rails_root/public/images/:class/:lesson_identifer/:attachment/:style.:extension",
8                     :url => "/images/:class/:lesson_identifer/:attachment/:style.:extension"

そして、:path:url の中で、上記のように使用できます。

参考

Rails, has_attached_file path with custom model attributes