Paperclip で id 連番でない URL を振るには

paperclip の保存ディレクトリ名あるいはファイル名をid連番ではなく、MD5とかSHA1のハッシュ値にするメモ - 超自己満足プログラミング

Google で検索して、やったー!とコピーペーストして動かしてみると、あれれ … エラーが。

/appname/config/initializers/paperclip.rb:1:in `': undefined method `interpolations' for Paperclip::Attachment:Class (NoMethodError)

探してみると、以下のような議論があって、廃止されちゃったのかな。

Google グループ - Paperclip::Attachment.interpolations DEPRECATION

こういう時は原点に戻りましょう。

GitHub - thoughtbot/paperclip: Easy file attachment management for ActiveRecord

"URI Obfuscation" として id 連番ではない URL を振る方法が説明してありました。モデルに以下のように書きます。

has_attached_file :user, {
:url => "/system/:hash.:extension",
:hash_secret => "longSecretString"
}

そんなに長いドキュメントでもないし、いそがば回れということですね … 毎度同じことを学んでいる気がしますが御愛嬌です ;)