0
我的Rails應用程序中有一個Player模型和表。有一個字段highest_level(int),用於存儲玩家達到的最高等級。由於每個玩家有多個配置文件,有些情況下報告的級別可能會低於數據庫中的最高級別。Rails 4驗證:greater_than:less_than更新
我做了一些關於validates和validates_numericality_of的研究,看來我可以分別使用:greater_than或:less_than來滿足我的需求。
在我的球員模型我嘗試這樣做:
class Player < ActiveRecord::Base
validates_numericality_of :highestLevel, greater_than: self.highestLevel
end
但是,執行最高水平值的更新,無論大或小的更新:
Player.update(8, highestLevel: 12)
我所希望得到的是沒有更新,因爲我的玩家ID 8的值是最高等級15.有沒有人有他們可以發佈或指向我的示例?
非常感謝!
我給你的榜樣旋轉,但我發現同樣的事情之前 - 在highestLevel值更新,不管它是大還是小比存儲的值。我使用Ruby 2.1運行rails 4.1.4。根據文件,這應該不會有所作爲。 – 2014-09-04 17:55:04
看看更新的答案,使用'highestLevel_was' – RAJ 2014-09-04 18:12:18
我也給了一個旋轉,但同樣的結果 – 2014-09-04 18:58:14