0
我想在rails中编写自定义验证以检查我输入的值是否在数据库中有重复。Rails自定义验证
我需要核对基于关闭4个不同的表/模型
我想写这样的用于验证的值:
class Locations::BranchBusinessGroup < Locations::Database
validate :url_duplicated
private
def url_duplicated
if self.location.url_prefix.valid?
errors.add(:location, 'URL is take')
else
if self.custom_url.valid? && self.self.business_group.is_on_web #both in different models
errors.add(:location, 'URL is used in a custom URL')
end
end
end
url_prefix
,url_suffix
,“:CUSTOM_URL ',is_on_the_web
是由表单输入的所有字段。逻辑应该检查url_prefix
和url_suffix
是否已经输入,如果它们没有匹配':custom_url'和is_on_the_web
。
这是不正确的编码方式和它的超级错误。它只是我想如何检查验证的想法。任何灯光都会很好。
错误我得到的是:
undefined method
有效“?对于“尚蒂伊-VA”:String`
问题是? – rlecaro2
已修改。想知道我该如何编写这样的自定义验证。 –
您使用的是什么ORM,ActiveRecord?什么是父'Locations :: Database'类?另外,请澄清一下会使这条记录无效的逻辑。从你的例子中,我们不清楚'url_suffix','custom_url'和'is_on_web'应该代表什么。 – PinnyM