我一直在试图弄清楚以下内容,但未能提出巧妙的解决方案。也许我错过了一些基本的东西。
概述
我有一个多对多的任务和用户模型。
一个用户可以有多个任务,一个任务可以在多个用户之间共享。
我使用以下内容创建任务:
user.tasks.create
任务通过 user_id 与用户链接,user_id 使用 task_id 与任务链接,使用 :through task_table
一个任务属于一个用户,但一旦完成,它就会传递给该任务的下一个用户。
问题
对于创建任务的用户来说,总是轮到他完成任务。完成后,将其传递给下一个用户。
我目前有:
user1.tasks.create(:current_user => user1.id)
当用户完成任务时, :current_user 改变。
我想要实现的是一种只需要编写 user1.tasks.create - 并自动设置 current_user 的方法,而无需显式传入 user1.id。有什么办法可以做到这一点吗?也许使用构造函数(我几乎尝试了所有这些,但无法正常工作)。
谢谢!