我注意到這個問題彈出很多,但在嘗試了幾個建議的解決方案後,我發現我仍然無法弄清楚什麼是錯的。我有一個稱爲樣本和用戶模型的模型。樣本獲得批准時,樣本的小時數應該添加到用戶總小時數中,但用戶值永遠不會更新。每個用戶都有一封唯一的電子郵件,在提交審批時存儲在樣本中。我檢查了數據庫,以確保它不是訪問該值的問題,並且沒有錯誤被拋出,所以我不確定發生了什麼。我很新的紅寶石和鐵軌,所以任何幫助表示讚賞。我samples_controller.rb包含功能:Rails .update_attribute不更新
def approve
@sample = Sample.find(params[:id])
@sample.update(sample_status:1)
@user = User.find(Sample.email)
hours_update = @user.hours + @sample.volunteer_hours
@user.update_attributes(:hours, hours_update)
redirect_to samples_adminsamples_path
end
編輯:感謝大家的幫助,結果發現我需要使用命令
@user = User.find_by(email: @sample.email)
,以獲得正確的用戶。
你能告訴我你在幾小時更新中獲得什麼價值,什麼是小時數據類型字段? – Vishal