本日のOut Put part30
こんばんは、Ramrinです^^
今日も引き続き、ユーザー管理機能の実装にあたりました。
先日、自分でも驚きの「ひらめきデー」でして、
ずっと苦戦していたバリデーションと単体テストコードについて、
調べていたら「お!これでいけるんじゃない?」とひらめいて実装したところ、
実装がうまくいきました!!!!
こうゆう日がたまにあると楽しいですよね笑
そして今日はメンターさんに提出して、追加でご指摘をいただいたところを修正しました。
新しく学んだこと
- バリデーションの条件をまとめる方法
with_option ~ do ~ endというコードを使用することで、
バリデーションの条件をまとめることができました。
しかもこれ、入れ子構造をとれるという便利なものでした。
with_options presence: true do
validates :nickname
validates :password, format: {with: /\A[a-z\d]{6,100}+\z/i }
with_options format: {with: /\A[ぁ-んァ-ン一-龥]/ } do
validates :family_name
end
with_options format: {with: /[\p{katakana} ー-&&[^ -~。-゚]]+/} do
validates :family_name_kana
end
end
おかげでコードがスッキリしました。
この調子で頑張ります^^
ではまた/