正确的轨道编码视图

时间:2014-01-11 23:08:17

标签: ruby-on-rails ruby-on-rails-4

如果未使用在线验证属性,在视图中显示模型属性的正确方法是什么。例如,如果用户模型具有websitetwitterfacebookabout等属性,则不需要这些属性来保存用户模型。

在视图中,用户可能有Twitter但未提供网站。当然,总是使用if语句是不恰当的:

<% if @user.website? %>
  <p><%= @user.website %></p>
<% end %>

根据用户是否拥有网站,向用户网站显示<p>标记的正确方法是什么?

1 个答案:

答案 0 :(得分:2)

有几种方法可以做到这一点,正确的方法真的是你的偏好。我相信这里的目标是可读性。对于简单的p代码,我会使用下面的content_tag选项。

部分选项:

选项1:使用content_tag

<%= content_tag(:p, @user.website) if @user.website %>

选项2:在p块中嵌套if标记

<% if @user.website %>
  <p><%= @user.website %></p>
<% end %>