ruby on rails配对数据库中的用户

时间:2017-02-01 22:49:02

标签: ruby-on-rails

如何在Ruby上编写代码,从我的数据库中选择用户X(假设我有一个名为'taskdone'的列,它只接受布尔值......并且用户X在这样的列中是真的),这样当新用户注册时,用户X将显示在他的个人资料中。并且新用户被赋予完成任务。如果他  成功完成它用户X可以从他自己的帐户确认新用户已经完成了他的任务,方法是单击一个按钮,该值将值true写入新用户付费的“任务完成”列。在用户X确认了四个人之后,他在列中的值应该回到假。这很复杂,我需要有人帮助我在没有答案的情况下搜索谷歌感到沮丧

1 个答案:

答案 0 :(得分:0)

你可以用两种方式做到这一点

1-如果您需要有关“哪个用户确认其他用户”的信息您可以为每个用户X创建一个关联,以便为其他用户确认。

2 - 如果您不使用这些信息,您只需创建一个列,用于计算“用户”表格中已确认用户的数量。

在这两种情况下,用户确认其他用户在创建 后确认4位用户是否已使用回调 进行检查,然后更新taskdone列。

after_create :update_task_done

第一种方式

def update_task_done
    if self.confirmed_users.count == 4
        self.update(taskdone: false)
    end
end

第二种方式

def update_task_done
    if self.confirmed_users_count == 4 # notice this is column.
        self.update(taskdone: false)
    end
end