我正在尝试使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。
谢谢。
答案 0 :(得分:0)
您可以使用@tasks = current_user.tasks.where(status: true)
这将返回current_user完成的任务。