验证用户输入的 PIN

  • 本文关键字:PIN 用户 验证 ruby
  • 更新时间 :
  • 英文 :


您将如何重构此代码以检查用户是否添加了 4+ 位 PIN,以便代码尽可能短?

def has_pin?
  return self.pin.to_i > 1000 rescue nil
  false
end

理想情况下,不要在用户创建时使用 AR 验证,因为它们最初是在没有 PIN 的情况下创建的,但在某些特定情况下可能会选择稍后添加它们。

PS:由于某种原因,PIN码存储为字符串。

我会选择:

def pin_valid?
  pin.present? && pin.match?(/Ad{4,}z/)
end

为什么你的目标是让你的代码尽可能短?我始终致力于使我的代码尽可能易于理解。

最新更新