使用Rails 4.在我看来,我发现自己做了很多事情:
<% if spot.phone.present? %>
<%= shop.phone %>
<% else %>
<%= link_to "Update", edit_shop_path %>
<% end %>
<% if spot.email.present? %>
<%= shop.email %>
<% else %>
<%= link_to "Update", edit_shop_path %>
<% end %>
只要属性不存在,就应显示标记<%= link_to "Update", edit_shop_path %>
。有更好的方法吗?
答案 0 :(得分:2)
制作部分:
<% if attr.present? %>
<%= attr %>
<% else %>
<%= link_to "Update", edit_shop_path %>
<% end %>
然后只重用这个部分:
<%= render "partial", attr: spot.phone %>
<%= render "partial", attr: spot.email %>
答案 1 :(得分:0)
尝试使用三元运算符:
<%= spot.phone.present? ? shop.phone : (link_to "Update", edit_shop_path) %>