【发布时间】:2014-09-04 17:04:54
【问题描述】:
我的 rails 应用中有一个 Player 模型和表格。有一个字段highest_level (int) 存储玩家达到的最高级别。由于每个玩家有多个个人资料,在某些情况下报告的级别可能低于数据库中的最高级别。
我对 validates 和 validates_numericality_of 做了一些研究,看来我可以分别使用 :greater_than 或 :less_than 来满足我的需要。
在我的 Player 模型中,我尝试了这个:
class Player < ActiveRecord::Base
validates_numericality_of :highestLevel, greater_than: self.highestLevel
end
但是,执行最高级别值的更新或多或少的更新无关:
Player.update(8, highestLevel: 12)
我期望得到的是没有更新,因为我对玩家 ID 8 的值的最高级别为 15。有人可以发布或指向我的示例吗?
非常感谢!
【问题讨论】:
标签: ruby-on-rails ruby validation ruby-on-rails-4 model