Active Record バリデーション
参考:
Active Record バリデーション - Rails ガイド
バリテーションとは
バリデーション (検証: validation)を使うことによって、正しいデータだけをデータベースに保存することができます
よく使うバリデーションヘルパー
①acceptance:フォームが送信されたときにユーザーインターフェイス上のチェックボックスがオンになっているかどうかを検証
例validates :terms_of_service, acceptance: true
②format:withオプションで与えられた正規表現と属性の値がマッチするかどうかのテストによる検証
例
validates :legacy_code, format: { with: /\A[a-zA-Z]+\z/, message: "英文字のみが使えます" }
③length:属性の値の長さを検証
class Person < ApplicationRecord validates :name, length: { minimum: 2 } #minimum: 属性はこの値より小さな値を取れません。 validates :bio, length: { maximum: 500 }#maximum: 属性はこの値より大きな値を取れません。 validates :password, length: { in: 6..20 }#inまたは:within: 属性の長さは、与えられた区間以内でなければなりません。このオプションの値は範囲でなければなりません。 validates :registration_number, length: { is: 6 }#is: 属性の長さは与えられた値と等しくなければなりません。 end
④presence:指定された属性が「空でない」ことを確認
例validates :name, :login, :email, presence: true
⑤uniqueness:属性の値が一意(unique)であり重複していないことを検証
例validates :email, uniqueness: true
現在user側の単体テストを書いているのですが、上記を意識して書かないとといけませんね