我目前正在使用haml开展一个关于RoR的项目,我有一个我以前从未见过的问题。
我有一个"用户个人资料"带有可选图像。我想显示图像是否存在,如果没有,我会显示一个占位符(存储在assets =>" admin / avatar.png"。所以,这是我的示例代码如下:
-unless @user.image.nil?
=image_tag @user.image.url,class:"img-responsive img-circle",style:"width:150px;height:150px;margin:auto;"
-else
%img.img-responsive.img-circle{:src => image_path("admin/avatar.png"),style:"width:150px;height:150px;margin:auto;"}
%img.img-responsive.img-circle{:src => image_path("admin/avatar.png"),style:"width:150px;height:150px;margin:auto;"}
第一个
%img.img-responsive.img-circle{:src => image_path("admin/avatar.png"),style:"width:150px;height:150px;margin:auto;"}
不起作用(显示"缺少")并且seconde实际上正在工作。我有点迷失了。
任何人?
感谢。
答案 0 :(得分:0)
unless else
是一种代码味道
我建议的解决方案:
- if @user.image.present?
= image_tag(@user.image.url, class:"img-responsive img-circle",style:"width:150px;height:150px;margin:auto;")
- else
= image_tag('admin/avatar', class:"img-responsive img-circle", style:"width:150px;height:150px;margin:auto;")