模型Member
属于Discipline
,即用户可以有一个规程,但它是可选的。
我想知道当我显示用户详细信息时,用什么惯用的Rails方式来显示成员的纪律。
我的第一个方法
<b>Discipline:</b>
<%=h @member.discipline.name %>
工作正常,但如果成员的纪律是
NoMethodError
,则失败那样的话,我不想有任何东西。我有几个选择
Define方法
Nil
如果成员没有规程,则返回用if限制输出;
使用“if”的替代方法如下:
<b>Discipline:</b>
<% if @member.discipline %>
<%=h @member.discipline.name %>
<% end %>
这不是一个大的决定,但我想知道是否有一个“惯用的方式”做这件事或一些帮手/某事或其他事情要考虑。
比尔,图科
最佳答案
在我看来,惯用的方式是:
<b>Discipline:</b>
<%=h @member.discipline.name if @member.displince.present? %>