2014-10-19 85 views
1

我有一个ActiveRecord模型:validates_length_of具有可变

class Message < ActiveRecord::Base 

其具有两个属性:content(字符串)和max_content_length(整数) 两者是动态的,由用户设置。
我试图使用max_content_length整数像这样来验证content字符串的长度:

validates_length_of :content, maximum: self.max_content_length 

或像这样:

validates_length_of :content, maximum: lambda{ self.max_content_length } 

但validates_length_of抛出或者是“无法找到”或“最大值必须是非负整数或无穷”异常(分别)。

是否有任何其他方式“注册”max_content_length函数作为验证器的长度?

谢谢!

(我知道这是问题,可能是为this questionthis one重复的,但不幸的是,答案有一点题外话和混乱)

回答