Ruby on rails Rails-如何将计算从视图移动到控制器

Ruby on rails Rails-如何将计算从视图移动到控制器,ruby-on-rails,ruby,controller,views,Ruby On Rails,Ruby,Controller,Views,对于RoR来说是相当陌生的,我想知道如何将这一行代码从我的视图移到我的控制器中。我也在使用Desive,当前用户已登录。提前谢谢 profile.html.erb <%= @profile.calorie / 4 %> 只需将计算放在控制器的实例变量中,并在视图中调用它: <%= @new_calorie %> 这个计算代表什么?就个人而言,我不喜欢这样一个简单的计算,除非你在不止一个地方使用它。为此创建帮助程序似乎有些过分。那么,在没有帮助程序方法的控制器中,

对于RoR来说是相当陌生的,我想知道如何将这一行代码从我的视图移到我的控制器中。我也在使用Desive,当前用户已登录。提前谢谢

profile.html.erb

 <%= @profile.calorie / 4  %>

只需将计算放在控制器的实例变量中,并在视图中调用它:

<%= @new_calorie  %>

这个计算代表什么?就个人而言,我不喜欢这样一个简单的计算,除非你在不止一个地方使用它。为此创建帮助程序似乎有些过分。那么,在没有帮助程序方法的控制器中,我如何翻译它呢?@ssosina-不要。保持这样的小计算是可以的。这比创建新的实例变量或方法要好得多,因为您还没有选择对象的记录。如果只调用
Profile
,则只调用类,而不是任何单个记录。您必须执行类似于
Profile.find(id:params[:id]).carorie/4的操作,才能找到特定配置文件记录的卡路里。Did@carorie=current_user.Profile.carorie,因为我正在使用designe。这起作用了。谢谢你的帮助
<%= @new_calorie  %>
def show #or index
   @new_calorie = @profile.calorie / 4
end