我目前正在一個小項目上工作,我希望更快地播種我的數據庫。我將一個名爲「grand_total_points」的新列移植到我的用戶表中。所以最初我使用這個代碼。如何使用update_all但每個?有更好的方法嗎?
user = User.all
user.each do |x|
x.grand_total_points = x.total_points
x.save!
end
這需要我很長時間,因爲我必須更新一百萬條記錄。 Total_points已經在我的用戶模型中定義,它計算所有已提交的用戶點數。原諒我的解釋。有沒有辦法使用update_all方法,但每個方法都包含在內?
'total_points'對於每個用戶都是不同的,只有'total_points'對所有用戶都是相同的,你纔可以使用它。 – Thanh
@ThanhHuynh這是一個錯字,在'total_points'(':total_points'')前應該有一個冒號 –
我試過了,它不起作用。這段代碼會將所有用戶的'grand_total_points'列更新爲'total_points'字符串。 – Thanh