在我的 Rails 模型中,我有某种模板系统。我想确保编辑它的用户不会犯意外错误,所以我使用了一些简单的验证器。
他们可以使用##user_id##以后会被替换的标记。我想确保他们不会输入###user_id##包含太多 的类似内容#,因此字段中不必出现任何###(或####)。
class Template
validates_format_of :text, :with => /##user_id##/,
:message => "##user_id## must be present"
validates_format_of :text, :not_with => /###/,
:message => "Too many #"
end
不幸的是,没有:not_with选择......有没有机会使用:with-regex 来解决它,或者我应该采用单独的validate方法吗?
我尝试了一些消极的前瞻,但由于(大部分)有几个##而且只有一个###,它们总是匹配其中一个。