我在Sinatra应用程序中有以下.erb视图:
<% sessions.each do |session| %>
<%= session.balance_beginning %>
<%= session.balance_ending %>
<% end %>
它按预期工作,显示为每个会话记录的期初和期末余额。我想从 .erb 文件中计算净余额,但我不知道该怎么做。我已经尝试了这个的变体:
<% sessions.each do |session| %>
<%= session.balance_ending - session.balance_beginning %>
<% end %>
那行不通。我在Sinatra收到以下错误:
undefined method `-' for nil:NilClass
我该如何做我想做的事情?
@Zabba,在这种情况下,我认为您会向会话模型添加一个方法,以便您可以调用session.net_balance。
然后在balance_ending和balance_beginning方法中,您希望处理 nil,要么引发错误,要么返回零(如果有效)。