【问题标题】:How to disable required validation email User Spree Commerce如何禁用所需的验证电子邮件用户 Spree Commerce
【发布时间】:2018-06-02 05:58:00
【问题描述】:
如何在 Spree Commerce 上禁用所需的验证电子邮件用户类?
我尝试创建一个装饰器:
Spree::User.class_eval do
validates :email, :presence => false
end
没有成功。
谢谢
【问题讨论】:
标签:
ruby-on-rails
validation
email
spree
commerce
【解决方案1】:
我找到了解决办法!
Spree::User.class_eval do
_validators.reject!{ |key, _| key == :email }
_validate_callbacks.each do |callback|
callback.raw_filter.attributes.delete :email if callback.raw_filter.is_a?(ActiveModel::Validations::PresenceValidator)
end
end
有效!
谢谢大家。
【解决方案2】:
为什么不使用absence 而不是presence。?
validates :email, absence: true
或者简单的解决方案可以从你的用户模型中注释掉验证代码,但这会导致你的数据库不一致。