如何在Rails中显示待办事项列表中的任务?

时间:2016-03-24 06:11:20

标签: ruby-on-rails ruby

我正在尝试使complete_task页面仅显示已完成的任务。当项目被检查为完成时,模式使用布尔值true。如何在task_controller.rb文件中设置方法,并在task/complete_task view中引用以实现此目的,同时仍对结果进行分页?

现在我的task_controller.rb文件对于complete_task方法有这个:

def complete_task
    @tasks = current_user.tasks.paginate(page: params[:page], per_page: 10)
  end

这只是显示所有用户的任务,比如索引页面。我猜我应该在代码的.task部分添加一个(params [:id])?我不知道如何检查任务状态boolean的值是true还是false。

任务架构如下所示:

create_table "tasks", force: :cascade do |t|
    t.string   "name"
    t.boolean  "status"
    t.datetime "created_at",        null: false
    t.datetime "updated_at",        null: false
    t.integer  "user_id"
    t.date     "completition_date"
  end

我的回购是Here

谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用@tasks = current_user.tasks.where(status: true)

这将返回current_user完成的任务。