laravel開発日記 第2章 第4回 ~ログイン回りの調整~

前回は、herokuにて、MySQLの設定をしました。
今回は、ログインまわりの調整まで、進めます。

実際のアプリの動作は、以下で確認してください。
■heroku ~ dorothy3
http://dorothy3.herokuapp.com/

ID:user2@dog-ears.net / Pass:pass
または、
ID:user3@dog-ears.net / Pass:pass

では、ユーザーテーブルを修正します。
第1章でやったことの繰り替えしなので、さくさくと。

(参考)
■LARAVEL 開発日記 第4回 ~ マイグレーションとシーディング ~
http://dog-ears.net/wp01/?p=58

(1)ユーザーテーブルにlevel項目を追加
・/database/migrationsに、migrationファイルを追加
・/app/User.phpの$fillable追加

で、いったんコミット。

(2)シーディング
・database/seeds/DatabaseSeeder.php
・app/Http/routes.php

うーん、前回、
シーディングで登録する前に一回登録して・・・
と、意味不明なことをしてますね・・・。

パスワードの暗号化のやり方がわからなかったんだろうなぁ。

■Laravel 5.1 データベース:シーディング
http://readouble.com/laravel/5/1/ja/seeding.html

公式マニュアルを見ると、しっかり書いてますww

'password' => bcrypt('secret'),

で、暗号化されます。

以下、修正

ユーザーの権限は、全部で3段階。
・admin(なんでもできる)
・manager(ユーザー登録はできない。)
・それ以外
と、します。

Admin権限は、ちょっと怖いので、非公開とさせていただきます。
実際には、環境変数を設定し、そこを読みに行くよう修正しています。

Seederの発動は、コンソールをあえて使わず、
routes.phpに記述して、ブラウザから呼び出すことにしました。

Route::get('/test', function(){
    /* UserテーブルのSeeding(2015/11/20) */
    $exitCode = Artisan::call( 'db:seed' );
    dd( $exitCode );
});

上記、アップロード後、
https://dorothy3.herokuapp.com/test/
にアクセスすると、シーディングされます。
※現在は、コメントアウトしてるので、シーディングされません。

次、ログイン画面回りの修正。

(3)初期画面をログイン画面に変更。
(4)ユーザー登録へのリンクを
未ログインのとき、表示

admin権限でログインしているとき、表示
に変更。

基本、前回と同じことをやっているので、ざっくり割愛。

■laravel 開発日記 第5回 ~ ログイン画面の修正 ~
http://dog-ears.net/wp01/?p=62#more-62

■laravel 開発日記 第6回 ~ ログイン処理のミドルウェア修正 ~
http://dog-ears.net/wp01/?p=65

あまり内容のない回になってしまったが、
今回はここまで。

次回は、パッケージのインストールを進めます。

laravel

Posted by dog-ears