LoginSignup
0
0

More than 1 year has passed since last update.

新規登録機能

Last updated at Posted at 2021-12-27

新規登録機能について

※とある未熟者エンジニアの備忘録です。(laravel6)

Laravelでは簡単に新規登録機能を実装する事ができます。
ルートは仮で設定したルートを用意し説明していきます。

php artisan route:list
上記コマンドにてログイン機能のルートが確認できます。
App\Http\Controllers\Auth\RegisterController.phpのshowRegistrationFormアクションメソッドを使うという設定を行い、そしてregisterという名前付きでルートを用意したとします。

次にviewを書く作業の説明です。
resources\viewsの中にauthフォルダを作成します。
ここに簡潔なregister.blade.phpを作る事にします。

<h1>新規ユーザー登録画面</h1>
<form action="{{ route('register') }}" method="post">
  @csrf
  <label>name</label>
  <input type="text" name="name" placeholder="店名を入力してください">
  <label>email</label>
  <input type="email" name="email" placeholder="emailを入力してください">
  <label>password</label>
  <input type="password" name="password" placeholder="パスワードを入力してください">
  <label>confirm_password</label>
  <input type="password" name="password_confirmation" placeholder="パスワードを入力してください">
  <input type="submit" value="登録">
</form>

これで新規登録機能は完了です。

これだけ?という疑問が生まれると思いますので、
どこで新規登録機能の処理がされているのか見ていきましょう。

実は冒頭で説明したRegisterController.phpの中にshowRegistrationFormアクションメソッドは書かれていません。
showRegistrationFormアクションメソッドの代わりに
use RegistersUsers;
が途中で書かれています。
一番上にはuse Illuminate\Foundation\Auth\RegistersUsers;と記載がありますので、
このRegistersUsers;の場所は
vendor\laravel\framework\src\illuminate\Foundation\Auth\RegistersUsers;
ここに書かれています。

このRegistersUsers;の中を見てみると
showLoginFormアクションメソッドが書かれています。

public function showRegistrationForm()
    {
        return view('auth.register');
    }

viewを作成するディレクトリも指定がされている為、
resources/viewsの中にauthフォルダを作成します。
authフォルダの中に次は冒頭で出てきましたregister.blade.phpを作成します。

バリデーションも機能している為、パスワードを入力する際は最低でも8文字を満たすようにしましょう。エラーメッセージは設定されていないので、8文字未満でパスワードを設定してしまうとDBに反映されませんのでご注意下さい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0