我有两个型号
用户和UserAgent
用户有一个UserAgent& UserAgent属于用户
而UserAgent使用Paperclip将文件上传到服务器
使用这个
has_attached_file :agreement,
:path => "#{Rails.root}/public/upload/new_agreements/:id/:basename.:extension"
这很好用。它正在创建上传文件所需的文件夹。
但我需要像这样创建文件夹
:path => "#{Rails.root}/public/upload/new_agreements/User:id/:basename.:extension"
这意味着我需要根据User.id而不是UserAgent.Id上传文件
有什么办法吗?如果你不理解这个问题,你可以提问。
答案 0 :(得分:2)
试试吧。我没有测试它,但你可以修改它:
class UserAgent < ActiveRecord::Base
has_attached_file :file,
:path => lambda{ |a| "#{Rails.root}/public/upload/new_agreements/#{a.instance.user.id}/:id/:basename.:extension" }
end