Những thư viện Gems tốt nhất để xác thực dữ liệu trong ngôn ngữ lập trình Ruby
1. Introduce
Để thực hiện validate ở server, Rails cung cấp sẵn rất nhiều validation helper.
Bên cạnh đó Rails cũng cho phép custom validator để tạo các validator phù hơp với business logic của dự án
Hoặc sử dụng các gem có sẵn trên rubygem phù hợp với dự án mà không cần viết lại.
2. Email
a. Introduce
Validate email là 1 validator cơ bản được sử dụng trong nhiều dự án khác nhau.
Thậm chí còn được sử dụng làm ví dụ cho phần custom validator trên guide của ruby on rails
classEmailValidator<ActiveModel::EachValidatordefvalidate_each(record, attribute, value)unless value =~/\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i
record.errors.add attribute,(options[:message]||"is not an email")endendendclassPerson<ApplicationRecord
validates :email, presence:true, email:trueend
user =User.create homepage:"http://localhost:3000/home-page"
user.valid?# false
user =User.create homepage:"http://example.com/home-page"
user.valid?# true
Ngoài ra còn có 1 số option khác là allow_nil, allow_blank, schemes, public_suffix
user =User.create homepage:"http://localhost:3000/home-page"
user.valid?# false
user =User.create homepage:"http://example.com/home-page"
user.valid?# true
Ngoài ra còn có 1 số option khác là is_at, before, after, on_or_after, type