2012-06-22 2 views
0

현재 저는 Paperclip을 사용하여 Rails 3에서 내 아바타 업로드 및 사용법을 처리하고 있습니다. 컨트롤러 리소스 (컨트롤러, 모델, 뷰 등)가있는 사용자 리소스가 있습니다 (사용자/신규 사용). 보기). 실제로 업로드 및 작업 할 때 에 '포함'하면 사용자가보기로 표시됩니다. (내가 깨진 이미지를 얻을 수 있지만 이미지를 실제로 저장하고 소스 코드를 볼 때 내 애플 리케이션의 올바른 경로에 링크로 로컬 서버 때문에 가정) 지금, 나는 스킬 (컨트롤러, 모델 및 뷰도 있음) 뷰에서 볼 때 아바타도 필요하지만 스킬 뷰에 사용자 아바타를 포함/사용하려고 할 때마다 다음 오류가 발생합니다 (아바타를 다른 뷰에 포함하려고하면 똑같은 문제가 발생 함). 사용자/쇼) 다른 :다른보기/레일 리소스의 클립 클립 아바타?

undefined method avatar' for nil:NilClass`

왜 이런 일이 무엇입니까? 내가 말하는대로 쇼보기에서 아바타를 embeding 때 또한

은, 그들은 실제로 "삽입"하지만 난 깨진 이미지와 다음 라우팅 오류 얻을 : 나는 로컬 호스트에있어

No route matches [GET] "/public/assets/users/UserID/thumb/userimage.jpg"

을 ... 그 때문에? ("userimage"가 앱의 해당 경로에 실제로 저장되어 있기 때문에 그렇게 추측하고 있습니다.)

누군가이 라우팅 오류의 원인과 여러보기에서 아바타를 사용하는 방법을 설명 할 수 있습니까? 다음 코드로 이미지를 "임베딩"합니다.

<%= image_tag @user.avatar.url(:thumb) %> 

감사합니다.

+0

'@ user' 변수가 올바르게 설정되지 않았 으면 먼저 그 문제를 수정하십시오. – lee

+0

Humm, 난 내 사용자 컨트롤러 에서이 가지고 있고 어디서나 내가 사용하는 @ 사용자가 작동 .. Oo : http://pastebin.com/yBMKnWVL – Jmlevick

+0

@ Jmlevick Perhap 그것은 자산 디렉토리에서 찾고'당신이 지정 : 경로 옵션'paperclip' – Viren

답변

2

문제가 해결되었습니다.

No route matches [GET] "/public/assets/users/UserID/thumb/userimage.jpg" 

나는 "대중을 제거했다 : 다음과 같은 오류에 대한

<%= image_tag @user.avatar.url(:thumb) %> 

그런 다음

undefined methodavatar' for nil:NilClass` 

를 들어 다음 코드에서 사용자로부터"@ "를 제거 "내 URL에서 사용자 모델의 기호가 에서

으로 변경되었습니다. 이에
:url => "/public/assets/users/:id/:style/:basename.:extension" 

:

:url => "/assets/users/:id/:style/:basename.:extension" 

이제 이미지 (로컬 및 생산 enviroments에에) 보여 내가 필요로하는 모든 뷰에서 사용할 수 있어요.

희망이 있으면 누군가에게 도움이됩니다.

+0

건배! 모두에게 "고맙습니다"! : D XD XD XD – Jmlevick

관련 문제