2016-11-21 104 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