【问题标题】:Static format validators in ActiveRecord?ActiveRecord 中的静态格式验证器?
【发布时间】:2014-01-27 21:38:56
【问题描述】:

ActiveRecord 模型中,我可以使用任何静态/固定格式吗?例如,在验证电子邮件地址的格式时,我可以制作一个静态正则表达式以在其他模型上重用,或者可能使用框架中已经存在的一些静态。

class Contact < ActiveRecord::Base
  EMAIL_FORMAT = /^[-a-z0-9_+\.]+\@([-a-z0-9]+\.)+[a-z0-9]{2,4}$/i

  attr_accessible :first_name, :last_name, ..., :email

  validates :email, :format => EMAIL_FORMAT
end

我想我可以简单地做:

validates :email, :format => ActiveRecord::SOME_STATIC_EMAIL_FORMAT

或:

validates :email, :format => :email

【问题讨论】:

    标签: ruby-on-rails ruby ruby-on-rails-3 activerecord ruby-1.8.7


    【解决方案1】:

    查看doc

    validates :email, format: { with: EMAIL_FORMAT }
    

    【讨论】:

    • 我不认为这有帮助 - 我在 ActiveRecord 中寻找一些静态正则表达式/格式,我可以在不编写自己的新正则表达式/格式的情况下重复使用。我希望框架中包含一组通用格式。我拥有的代码工作正常,所以这不是什么不工作的问题,只是不想重复工作。
    • 我一直用Devise.email_regexp
    猜你喜欢
    • 2014-05-11
    • 2011-04-20
    • 2021-05-30
    • 2016-06-02
    • 1970-01-01
    • 1970-01-01
    • 2016-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多