Rails 3 - 如果一个记录不存在,如何创建记录或更新现有记录

时间:2010-10-11 03:12:15

标签: ruby-on-rails ruby-on-rails-3

我正在为People& amp;创建权限表图书

在权限表中我有:Permission.ID,user.id,book.id

我希望管理员能够为用户<>图书设置权限。

当用户选择权限并单击提交时,在Rails控制器中,我应该提交/创建还是/更新?

有没有一种方法可以提交给一个是新的还是更新,让Rails根据UserID和BookID是否存在记录来创建或更新记录?

由于

1 个答案:

答案 0 :(得分:2)

如果他们正在编辑现有记录,则只提交更新。如果他们正在创建新记录并且您确保没有任何重复项,请尝试在create方法中使用find_or_create_by。