具有id belongs_to的回形针自定义路径

Awe*_*wea 3 paperclip ruby-on-rails-3

我在项目中使用paperclip.

有关模型看起来像这样:

class Asset < ActiveRecord::Base

  has_paper_trail                              # Track model with paper_trail
  has_attached_file :image, :styles => { :medium => "300x300>"}, 
  :path => ":rails_root/public/attachments/project_#{:project_id}/ressources/:basename_:style.:extension"

  belongs_to :project

end
Run Code Online (Sandbox Code Playgroud)

如你所见,我希望在我的图像路径中拥有相关项目的ID,我该如何做到这一点?

Dea*_*mer 6

试试这个

has_attached_file :image, :styles => { :medium => "300x300>"}, 
 path => ":rails_root/public/attachments/:project_id/ressources/:basename_:style.:extension"
Run Code Online (Sandbox Code Playgroud)

然后写

Paperclip.interpolates :project_id do |attachment, style|
    "project_#{attachment.instance.project_id}"
  end
Run Code Online (Sandbox Code Playgroud)