KATUUUNs blog

プログラミング学習で得た知識をアウトプットするためのブログです

学習28日目 ユーザー管理機能で苦労した点

こんにちは、KATUUUNです。
毎日暑いですね。ちなみに今日歯医者に行ったら虫歯があると診断されました。
f:id:KT34309349:20210801213603j:plain
機能に引き続きフリマアプリを作っていました。今日はユーザー管理機能(新規登録、ログイン、ログアウト)などを実装していました。

そこで苦労した点を2点紹介します

正規表現
新規登録の際、全角漢字・カナの表現をどうするか

with_options presence: true, format: { with: /\A[ぁ-んァ-ヶ一-龥々ー]+\z/, message: '全角文字を使用してください' } do
  validates :first_name
  validates :last_nam
end

ぁ-んァ-ヶ一-龥々ー
・平仮名は「ぁ」から「ん」までで全てを表現できます
・カタカナは「ァ」から「ン」までにすると「ヴ、ヵ、ヶ」が弾かれてしまいます
・「々」utf-8文字コード上で記号として認識されているため、別途「々」の指定を追加する必要があります。
・メアリーなどの「ー」も別途指示が必要です。

②devisenのインストールの手順を間違えた
本来なら
Gemfileに gem 'devise'記載後
bundle install

rails g devise:install

rails g devise user
のところをrails g devise:installを忘れてrails g devise userしてしまった。
そのまま
マイグレーションファイルにテーブル情報を記載して、
rais db:migrateを実施したところエラー文が!

ルーティングファイルの以下を削除して
devise_for :users

rails d model user
でbundle installの直後まで戻りました。