【问题标题】:Custom Validation for phone numbers in RailsRails 中电话号码的自定义验证
【发布时间】:2019-09-19 14:27:15
【问题描述】:

我在使用 rails 的自定义验证时遇到了一些问题。我想验证只有数字被放入他们在下拉列表中选择拨号的字段中。

到目前为止我的代码

validate :validate_numericality_of_dial_arg

def validate_numericality_of_dial_arg
    if action_type == "dial"
      return action_dst =~ /^\d+$/
    else
      errors.add(:base, "must be numbers")
    end
end

现在我收到错误提示,即使用户输入数字也必须是数字

【问题讨论】:

  • 可以在方法中运行puts "~#{action_dst}~"并粘贴输出吗?

标签: ruby-on-rails ruby validation customvalidator


【解决方案1】:

如果您不想坚持使用自定义验证器,您可以随时使用一些 rails 魔法:

## app/model.rb
validates :action_dst, numericality: true, if: -> {action_type == "dial" }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-11-17
    • 2015-05-29
    • 1970-01-01
    • 1970-01-01
    • 2011-05-28
    • 1970-01-01
    • 1970-01-01
    • 2012-10-27
    相关资源
    最近更新 更多