2016-03-22 9 views
0

私は今週からタスクを表示したいと思いますが、これまではグループ化することしかできませんでした。今週のタスクのみを表示するには -

ビュー:

 <% @task_months.each do |month, tasks| %> 
     <% for task in tasks %> 
     <tr> 
      <td><%= link_to task.name, task %></td> 
      <%if task.due_date? %> 
      <td>due on <%= task.due_date.strftime("%B %d, %Y") %></td> 
      <% end %> 
      <td><%= link_to 'Edit', edit_task_path(task), class: "btn btn-info" %></td> 
      <td><%= link_to 'Destroy', task, method: :delete, data: { confirm: 'Are you sure?' }, class: "btn btn-danger" %></td> 
     </tr> 
     <% end %> 
     <% end %> 

コントローラー:

def week_task 
@tasks = Task.order(:due_date) 
    @task_months = @tasks.group_by {|t| t.due_date.beginning_of_week } 
end 

イム工夫使用して、私もcurrent_userのタスクと週の@tasksを表示したいです。

答えて

0

これを試してみてください:

@task_months = @tasks.where('due_date >= ? AND due_date <= ?', Time.current.beginning_of_week, Time.current.end_of_week) 

そして、現在のユーザーのタスクのために、のようなもの:

@task_months = @tasks.where('user_id = ?', current_user.id) 

か、現在のユーザーのタスクのためのタスクのための2つを組み合わせる今週:

@task_months = @tasks.where('due_date >= ? AND due_date <= ? AND user_id = ?', Time.current.beginning_of_week, Time.current.end_of_week, current_user.id) 
+0

を私はこれとしばらくの間苦労しています –

関連する問題