dam*_*ser 1 validation model ruby-on-rails-3
我在模型验证中有这样的代码:
validates :fb_user_id, :uniqueness => {:scope => :campaign_id}
Run Code Online (Sandbox Code Playgroud)
但是campaign_id
对于不同的用户,可能会发生值-1,从而引发验证异常.可以这样做吗?
validates :fb_user_id, :uniqueness => {:scope => :campaign_id}, if :campaign_id != -1
Run Code Online (Sandbox Code Playgroud)
我可以if conditions
在验证声明中加入内联,或者如果不可能,我该如何处理?
按照MagicMarkker的想法,我找到了一个解决方案:
validates :fb_user_id, :uniqueness => {:scope => :campaign_id}, :if => :valCampaign?
def valCampaign?
if campaign_id == -1
return false # skip the validation
else
return true # run the validation
end
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
2870 次 |
最近记录: |