2016-11-21 102 views
0

我有一个rails应用程序,其中我试图downvote或upvote联系人。我有一个由devise驱动的用户模型。我也有一个反馈模型,用于存储哪个用户已经投票/低投注了一个联系人。如果两个用户尝试向上/向下投票显示相同的联系人详细信息,如何将记录插入到反馈表中?检查重复记录,然后创建

+0

发现你有没有考虑再添加文档? –

+0

[在Rails中,如果不存在,更新记录或创建新记录的最佳方法是什么?](http://stackoverflow.com/questions/4621208/in-rails-what-is -the条最佳方式对更新一个记录,或创建-A-新一-IF-IT-一样) –

回答

0
Contract.find_or_create_by(name: 'xyz') do |contract| 
    contract.user_id = current_user.id 
end 

在上面的代码,你有两个情况

案例1)合同名称XYZ在这种情况下,该合同将当前用户的ID

案例2)合同名称XYZ更新存在不存在在这种情况下,新的合同将与当前用户的ID创建

更多信息可以在Api Dock