我發現本教程(http://www.coffeepowered.net/2009/02/15/graceful-degredation-using-gravatar-as-a-fallback-avatar-with-paperclip/)關於將Gravatar作爲默認圖像實現爲啓用回形針的模型,但在實現時,我在[:format,:png]中看到消息「未定義方法匹配」:Array 」。這篇文章有什麼不對?paperclip + gravatar
1
A
回答
2
我更新了代碼,使其更容易理解和調試。
Paperclip.interpolates(:gravatar_url) do |attachment, style|
size = nil
# style should be :tiny, :small, or :regular
# size_data is assumed to be "16x16#", "20x20#", or "25x25#", i.e., a string
size_data = attachment.styles[style][:geometry]
if size_data
# get the width of the attachment in pixels
if thumb_size = size_data.match(/\d+/).to_a.first
size = thumb_size.to_i
end
end
# obtain the url from the model
# replace nil with "identicon", "monsterid", or "wavatar" as desired
# personally I would reorder the parameters so that size is first
# and default is second
attachment.instance.gravatar_url(nil, size)
end
0
如果你仍然有問題,你可以試試Avatar寶石,它支持的不同化身的方法,包括回形針和的Gravatar鏈。
注意:這是一個無恥的插件,因爲我寫了這個東西。
+0
是啊,我見過,但沒有足夠的文檔來理解如何使用你的寶石:( – 2009-10-23 18:40:16
2
注意我嘗試此解決方案時,出現以下錯誤:
NoMethodError: undefined method `first' for #<Hash:0xb6476178>
from /home/bob/dev/Firehoze/app/models/user.rb:114:in `gravatar_url'
我解決它通過更換行:
size_data = attachment.styles[style].first
與
size_data = attachment.styles[style][:geometry]
1
Paperclip.interpolates :gravatar_url do |attachment, style|
attachment.instance.gravatar_url(attachment.styles[style][:geometry].split('x').first)
end
相關問題
- 1. Flattr Gravatar圖標
- 2. 的Gravatar內Laravel
- 3. 的Gravatar圖像
- 4. Gravatar:哈希圖像?
- 5. 添加gravatar問題
- 6. 開源gravatar實現?
- 7. Gravatar for user post(RoR)
- 8. 表達對的gravatar
- 9. ActiveAdmin with PaperClip
- 10. Rails3和Paperclip
- 11. Paperclip gem not recognized
- 12. rails jcrop + paperclip
- 13. Rails,redactor和Paperclip
- 14. Polymorphic Paperclip Interpolations
- 15. Rails 3 PaperClip NoHandlerError
- 16. CanCan 2.0 + Paperclip expiring_url
- 17. Uploadify - Paperclip - Rails 3.0.3
- 18. Paperclip「:discard_if」功能
- 19. BrowserCMS和Paperclip
- 20. Paperclip undefined method'after_commit'
- 21. 從Gravatar更改smooch頭像
- 22. 自定義的Gravatar Rails中
- 23. 用戶模型中的gravatar
- 24. 在django中使用gravatar
- 25. gravatar最高分辨率
- 26. Gravatar圖像不顯示?
- 27. 包含的Gravatar在網站
- 28. 如何緩存gravatar頭像?
- 29. 獲取Gravatar API密鑰
- 30. 從JSON獲取Gravatar Img
什麼風格像:thumb => ['75x75#',::PNG] ?? – 2009-10-23 04:16:01
也 - 我已更新此代碼 Paperclip.interpolates:gravatar_url do | attachment,style | 和 attachment.instance.gravatar_url(「」,size) – 2009-10-23 04:17:37
正確...這就是爲什麼我添加了所有這些評論。 '['75x75#',::png]'會導致錯誤,因爲文章假設'size_data'是一個字符串。如果不是,那麼你需要更新代碼來做:'size_data = size_data.first if size_data.kind_of?(Array)'或類似的東西。 – 2009-10-23 04:40:28