1
更新函數在我的ruby控制檯中工作,如下所示,但更新沒有反映在數據庫中的這個特定用戶。Ruby更新方法
對於所有其他用戶,它的工作原理是完美的,並且使用update_all工作,但也更新所有其他用戶。任何想法爲什麼?
ruby-1.9.2-p290 :002 > User.update(51, :introduction => "testupdate")
User Load (0.2ms) SELECT "users".* FROM "users" WHERE "users"."id" = ? LIMIT 1 [["id", 51]]
(0.3ms) UPDATE "users" SET "introduction" = 'testupdate', "updated_at" = '2011-09-13 18:53:25.896711' WHERE "users"."id" = 51
=> #<User id: 51, email: "[email protected]", introduction: "testupdate", created_at: "2011-09-13 18:45:18", updated_at: "2011-09-13 18:53:25">
FYI我試圖更新的用戶通過登錄手動創建的唯一用戶,其他人都爲虛擬賬戶通過seeds.rb創建
你檢查失敗的驗證? – meagar
是的,我使用Devise進行身份驗證,並嘗試刪除所有驗證。仍然難倒。 – neon
哇。從來沒有 - 我意外地在用戶模型中有一個after_save,實際上導致驗證失敗。哎呀! – neon