所以我对铁路很新,但我觉得我经历了很多文件。
我正在尝试使用两个@tasks列表填充我的页面,一个已完成,另一个已完成。
我怎样才能在一个页面上同时获得这两个?
我是否需要做两个.find
并制作两个有效记录?
或者是在一个查询中完成它的方法吗?
答案 0 :(得分:0)
首先,在模型中指定范围。 http://guides.rubyonrails.org/active_record_querying.html#scopes
class Task < ActiveRecord::Base
scope :done, -> { where(finished: true) }
scope :todo, -> { where(finished: false) }
end
然后在控制器中选择它们:
def index
@done = Task.done
@todo = Task.todo
end
然后在视图中显示:
<h1>Done tasks</h1>
<% @done.each do |task| %>
<h5><%= task.title %></h5>
<p><%= task.created_at %></p>
<% end %>
<h1>Todo tasks</h1>
<% @todo.each do |task| %>
<h5><%= task.title %></h5>
<p><%= task.created_at %></p>
<% end %>