根据创建日期列出对象
问题描述:
对于业余爱好者的问题很抱歉,但对于rails我还是比较陌生。我现在有一个创造就业机会的应用程序,我想显示日期下方他们在他们的Dribble根据创建日期列出对象
做同样的方式创建目前显示的作业我已经TE以下的工作:
<% @jobs.each do |job| %>
<div class="job-wrapper"><%= link_to user_job_path(job.user_id ,job) do %>
<div class="job">
<div class="job-desc"><strong><%= job.company %></strong> are looking for a <strong><%= job.job_title %></strong>
<div class="job-sal"><%= job.job_salary %></div>
</div>
</div>
</div>
<% end %>
<% end %>
我确定我需要创建一个循环来完成这项工作,但我不确定如何合并它,以便日期只在作业顶部显示一次,然后显示在该日期创建的所有作业。
任何帮助将不胜感激!由于
答
尝试下面的模式 -
<% @job.group_by{|x| x.created_at.to_date }.each do |date,jobs_on_that_date| %>
<%= date %>
<% jobs_on_that_date.each do |job| %>
# render the job
<% end %>
<% end %>
基本上你的(要在组或其他)的日期需要你组的工作然后得到一个哈希键安装在您分组上的东西。然后呈现键(日期),后跟与该键相关的对象列表。
嗨,感谢您的回复,我不断收到'未定义的方法'group_by''虽然 - 任何想法如何解决这个问题?谢谢:) – 2012-07-30 17:20:41
不知道@job是什么。尝试@ job.all.group_by {...} – 2012-07-30 18:23:31