2010-12-11 3 views
5

저는 Paperclip을 사용하여 사진 갤러리/저장소를 제작하고 있습니다. 갤러리에는 많은 사진이 있고 사진은 갤러리에 속하며 사용자는 많은 갤러리를 보유 할 수 있습니다. 클립 클립의 기본값은 /: class/:style/:basename.:extension과 같은 역할을합니다. 그러나, 갤러리 설정으로, 나는 차라리 뭔가를 갖고 싶어/: class/: user_name/: 갤러리 명/: 스타일/:베이스 이름 : 확장. 나는 아직 이러한 저장 위치를 ​​동적으로 생성하기 위해 객체의 변수에 액세스하는 방법을 찾지 못했습니다.개체의 값을 사용하는 종이 클립 경로/URL

이렇게하는 방법이 있습니까?

경로에서 # {variable}을 (를) 사용해 보았지만 작동하지 않습니다. 이러한 사진 객체는 @ gallery.photos.build를 사용하여 만들어 지므로 gallery_id에 이미 액세스 할 수있는 값이 있어야합니다.

답변

8

Thoughtbot.com의 tips and updates 섹션을 살펴보십시오. path/url에 보간 변수를 추가하는 방법에 대해 설명합니다.

4

@ zetetic의 답변은 약간 날짜가 있습니다 (블로그 게시물은 2008 년입니다). 사용자 정의 보간을 작성하는 현재 (2015) 방법은 paperclip wiki에 설명되어 있습니다. 질문에 user_name을 입력하면 다음과 같이 표시됩니다.

# interpolate in paperclip 
Paperclip.interpolates :user_name do |attachment, style| 
    attachment.instance.gallery.user.name 
end 
+0

새 문서 링크를 게시 해 주셔서 감사합니다! – jaredsmith