2011-04-11 4 views
2

나는이 두 모델
사용자 및 해당 UserAgent
사용자 & 해당 UserAgent이

has_attached_file :agreement,
:path => "#{Rails.root}/public/upload/new_agreements/:id/:basename.:extension"
종이 클립 관련 질문

이 작업을 사용하여 서버
에 파일을 업로드 종이 클립을 사용하여 사용자
그리고 해당 UserAgent에 속하는 한 해당 UserAgent있다 파일 업로드에 필요한 폴더를 만듭니다.

하지만 난 내가 User.id에 따라 파일을 업로드하지만 어떤 방법이 있나요
을 UserAgent.Id하지 할 필요가 뜻이
:path => "#{Rails.root}/public/upload/new_agreements/User:id/:basename.:extension"
같은 폴더를 생성해야합니까? 질문을 이해할 수없는 경우 질문 할 수 있습니다.

답변

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 
+0

도움 주셔서 감사합니다.하지만 동일한 결과가 나타납니다.이 줄을 내 User.rb 파일에 넣어야하는지 여부는? 이제는 useragent.rb (model) 파일에 있습니다. 파일 세부 정보를 user_agent 데이터베이스 테이블에 저장하려고합니다. – shajin

+0

나는 대답을 업데이트했고, 이것을 UserAgent 모델에 추가해야한다. – fl00r

+0

감사의 말씨 fl00r, 그것은 나를 위해 일했다. 그리고 이것이 오픈 소스와 stackoverflow를 좋아하는 이유이다. :) – shajin