php artisan tinkerでDBにユーザーを作る
ユーザー登録APIを作っています。
ログインするときは、 ユーザーアカウント名
と パスワード
で認証します。
ログイン機能を試すために、DBに先にユーザーを作ろうと思いました。
どうすればいいか、というと、 php artisan tinker
を使います。
これを使うことで、コマンドラインからデータベースなどに直接的に働きかけることができます。
php artisan tinker 起動の仕方
簡単で、コマンドラインでLaravelをインストールしたフォルダ直下に cd
で移動し、php artisan tinker
とうつと、起動します。
この後は、モデルなどの操作が普通のソースを書くように書け、Enterを押すと、その場で実行されます。
ユーザーを新規作成し、名前を入れてみる
例えば、ユーザー名を入れる場合は以下のようになります。
php artisan tinker $user = new User; $user->name = "hoge"; $user->save();
これでDBを見ると、ユーザーができて、名前に hoge
が入っていることが確認できます。
ただし、DBで必須項目に設定しているカラムは全て入れないとダメです。
パスワードを入れてみる
次は、パスワードを入れてみましょう。
パスワードは少し注意が必要で、 bcrypt()
メソッドをかまして、ハッシュ化してから保存する必要があります。
Laravelの認証機能を使っている場合は、ユーザー登録をする際に、必ずハッシュ化をかましてくれるようになっています。
php artisan tinker $shop = Shop::find(1); $shop->password = bcrypt('password'); $shop->save(); exit
'password'
のところは、任意のパスワードを入れます。
これで、ユーザーをDBにて自作することができ、認証周りのテストを実行できます。
以上。