我运行红宝石2和Rails 4Rails的:限制索引视图来显示今天的条目只有
我创建一个应用程序,你可以追踪每一餐的热量和大量营养素,但我想这顿饭索引仅显示每个用户今天输入的内容,而不是他们曾经进入的每餐。
我目前只显示每天输入的内容,但底部的总数是所有进入的餐食,而不仅仅是今天的总数。我无法将.created_at.to_date == Date.current
添加到@meals
变量中。它会抛出一个undefined method 'created_at' for 1500:Fixnum
每个用户都有一个BMR,然后计算它们在特定日期剩余的卡路里量。我MealsController
我的索引视图:
<table>
<thead>
<tr>
<th>Name</th>
<th>Calories</th>
<th>Protein</th>
<th>Carbs</th>
<th>Fats</th>
</tr>
</thead>
<tbody>
<% @meals.each do |meal| %>
<tr class= "value">
<% if meal.created_at.to_date == Date.current %>
<td><%= link_to meal.name, edit_meal_path(meal) %></td>
<td><%= meal.calories %></td>
<td><%= meal.protein %></td>
<td><%= meal.carbohydrates %></td>
<td><%= meal.fats %></td>
<% end %>
</tr>
<% end %>
<tr>
<td class="meal-total">Total:</td>
<td class="meal-total"><%= @meals.sum(:calories) %></td>
<td class="meal-total"><%= @meals.sum(:protein) %></td>
<td class="meal-total"><%= @meals.sum(:carbohydrates) %></td>
<td class="meal-total"><%= @meals.sum(:fats) %></td>
</tr>
<% unless current_user.bmr.nil? %>
<tr class="remaining">
<td class="meal-remaining">Remaining:</td>
<td class="meal-remaining"><%= current_user.bmr - @meals.sum(:calories) %></td>
<td class="meal-remaining"><%= (current_user.bmr*0.4/4).to_i - @meals.sum(:protein) %></td>
<td class="meal-remaining"><%= (current_user.bmr*0.4/4).to_i - @meals.sum(:carbohydrates) %></td>
<td class="meal-remaining"><%= (current_user.bmr*0.2/9).to_i - @meals.sum(:fats) %></td>
</tr>
<% end %>
</tbody>
</table>
我MealsController:
class MealsController < ApplicationController
before_action :set_meal, only: [:edit, :update, :destroy]
before_action :authenticate_user!, except: :index
def index
@meals = current_user.meals if user_signed_in?
end
.
.
.
.
end
预先感谢您!
FWIW,拥有“瘦控制器”和“胖模型”可能会更好。请参阅[这里](http:// stackoverflow。com/questions/2550376/rails-skinny-controller-vs-fat-model-or-should-i-make-my-controller-anorexic)了解更多详情。 – Davidann
我试过重新启动我的服务器,但它仍然给我:/Users/lukemacauley/tracktrack/app/controllers/meals_controller.rb:7:语法错误,意外的tCONSTANT,期待')'... als.where( “created_at <?”Time.now.beginning_of_day)...^/Users/lukemacauley/tracktrack/app/controllers/meals_controller.rb:7:语法错误,意外的')',期待keyword_end/Users/lukemacauley/tracktrack/app /controllers/meals_controller.rb:61:语法错误,意外的输入结束,期待keyword_end –
刚刚解决:''created_at <?“''' –