2012-06-22 78 views
0

目前我使用回形針來處理我的頭像上傳和Rails 3中的用法。我有一個用戶資源(有控制器,模型,視圖等),我上傳頭像到(使用用戶/新查看),並且在將它們「嵌入」到用戶顯示查看時,它們實際上傳和工作。 (我弄破了圖像,但我認爲是因爲本地服務器作爲圖像實際上保存並鏈接到我的應用程序在查看源代碼時正確的路徑)現在,我有另一個資源稱爲技能(與控制器,模型和視圖也)在這些視圖中,我也需要顯示頭像,但是每當我嘗試在技能視圖中嵌入/使用用戶頭像時,我都會收到以下錯誤(如果我嘗試在另一個視圖中嵌入頭像從用戶/顯示)不同:從軌道中的其他視圖/資源訪問Paperclip頭像?

undefined method avatar' for nil:NilClass`

這究竟是爲什麼?

而且,正如我所說,在Show View embeding的頭像時,他們實際上是「嵌入」但我得到破碎的形象和下面的路由錯誤:

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

我在本地主機...是因爲那個? (我猜這是因爲「userimage」它實際上保存在應用程序的該路徑)

有人能解釋我發生了什麼這個路由錯誤以及如何在多個視圖中使用頭像?我用以下代碼「嵌入」圖像:

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

謝謝。

+0

您的'@ user'變量設置不正確,請先解決該問題。 – lee

+0

不明白Humm,我有這在我的用戶控制器和無論我使用@user它的作品.. Oo:http://pastebin.com/yBMKnWVL – Jmlevick

+0

@Jmlevick Perhap它正在您指定的資產目錄下:': '回形針'路徑'選項 – Viren

回答

2

修復了問題!對於

undefined methodavatar' for nil:NilClass` 

我刪除了來自用戶的 「@」 在下面的代碼:

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

然後,出現以下錯誤:

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

,我不得不刪除「公「從我的Url Symbol在用戶模型中,所以它從 這個變成了:

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

要這樣:

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

現在的圖像顯示(在當地生產enviroments),我能夠從我所需要的所有視圖中使用它們。

希望這有助於某人。

+0

乾杯! 「謝謝你」給每個人! :D XD XD XD – Jmlevick

相關問題