我有一个应用程序,用户可以在Facebook上注册,在这种情况下,我会拍摄Facebook图像,或者他们可以使用常规身份验证进行注册,在这种情况下,他们会使用CarrierWave gem上传照片。Ruby if else语法
由于某种冲突,我不得不在数据库中创建一列(:image
)以将url存储到Facebook图像,然后在另一列(:dimage
)中存储图像的url(如果它们已经签名使用非Facebook的注册。
因此,当显示用户时,我正在检查是否存在:image
,如果没有,则显示其他:dimage
。
但是,我不想要求他们上传图片,在这种情况下,我想要显示anon图片(此处由rails.png
表示)。然而,Rails.png没有显示出来(只是一个破碎的形象路径),所以我假设有某种我if else
语法错误的,因为image_tag("rails.png")
从API直取
<% if user.image %>
<%= image_tag user.image %>
<% elsif user.dimage %>
<%= image_tag user.dimage_url(:thumb).to_s %>
<% else %>
<%= image_tag("rails.png") %>
<% end %>
的生成html on the rails.png
<img alt="Assets" src="/assets/">
什么是生成的HTML? – 2012-03-27 03:45:09
查看html的更新信息 – Leahcim 2012-03-27 04:06:03
你的逻辑错误,你应该在User上有一个简单的'image_thumb_url'方法,返回适当的'src'属性。 – 2012-03-27 04:19:23