#はじめに
今回は完全に自分用で覚えておきたいことを雑多に書き連ねている。
##正規表現
PASSWORD_REGEX = /\A(?=.*?[A-z])(?=.*?[\d])[A-z\d]+\z/i.freeze # 半角英数混合1字以上
ZENKAKU_REGEX = /\A[ぁ-んァ-ン一-龥]+\z/.freeze # 全角ひらカタ漢字
KANA_REGEX = /\A[ァ-ヶー-]+\z/.freeze # 全角カナ
freeze
は変数が変わらないようにするため。
##バリデーションのオプションをまとめる
with_options presence: true do
validates #オプションをつける
end
##エラーメッセージを表示させる
foem_withの中でrenderメソッドでファイルを呼び出す。そのとき、devise配下のファイルであるように記述をする。
<%= form_with model: @user, url: user_registration_path', local: true do |f| %>
<%= render 'devise/shared/error_messages', model: f.object %>
_error_messages.html.erb
<% if model.errors.any? %>
<div id="error_explanation">
<h2>
<%= I18n.t("errors.messages.not_saved",
count: model.errors.count,
resource: model.class.model_name.human.downcase)
%>
</h2>
<ul>
<%= model.errors.full_messages.each do |message| %>
<li><%= message %></li>
<% end %>
</ul>
</div>
<% end %>
modelを呼び出すように記述する。