2014-10-19 68 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重複的,但不幸的是,答案有一點題外話和混亂)

回答