如果没有附加图像,Carrierwave支持default_url
我有这样的设置:
def default_url
"/assets/avatars/" + [version_name, "_default.png"].compact.join('_')
end
使用辅助方法,如:
def show_avatar(id)
@profile = User.find(id).profile rescue nil
image_tag @profile.assets.first.file_url(:search) rescue nil
end
如何对其进行重构,以便在没有图像时显示default_url图像?我找不到这个,现在使用救援零,因为如果没有附加图像,它会崩溃。
答案 0 :(得分:2)
我可能错了,但我确信在这种情况下你会做的
image_tag model.mount.version.url
如果没有版本或文件,则carrierwave使用默认网址
答案 1 :(得分:0)
我通过这样做来解决这个问题:
Image.new.file.url(:version)
Image
是我的模型,其中我将上传者附加到file
字段。希望它有所帮助。