LoginSignup
16
16

More than 5 years have passed since last update.

ダッシュボード付きユーザー管理用パッケージ laravel-authentication-acl を試す

Last updated at Posted at 2014-10-09

========

laravel-authentication-acl/index.md at 1.1 · intrip/laravel-authentication-acl に従う。

ここではローカル環境 (Mac OS X 10.9.5) へのインストールを想定。

インストール

先に app/config/local/db.php に db 接続設定をしておき、PHPからDBアクセス可能な準備をしておく。

その後、

  • composer.json"jacopo/laravel-authentication-acl": "1.1.*" を追加
  • php composer.phar update
  • app/config/app.php の 'providers' セクションに、
    • 'Jacopo\Authentication\AuthenticationServiceProvider', を追加
  • php artisan authentication:prepare --env=local
  • php artisan authentication:install --env=local

確認

ターミナルで hostname コマンドで出てきたホスト名を下記ファイルに設定する。
仮に my-mbp.lan がホスト名の場合、

bootstrap/start.php において、

bootstrap/start.php
$env = $app->detectEnvironment(array(

    'local' => array(
        //'homestead',
        'my-mbp.lan',
    ),

));

と設定しておく。

ログイン

php artisan serve --env=local でローカルサーバーを立ち上げて、
http://localhost:8000 上で確認していく。

が初期ログインユーザーとして設定されている。

各アクセス URL

  • クライアントログイン: /login
  • 管理者ログイン: /admin/login
  • ユーザー作成: /user/signup
  • ログアウト: /user/logout

/admin/login にアクセスすると、

画像 → laravel-authentication-acl/index.md at 1.1 · intrip/laravel-authentication-acl のような画面が出て来たら確認OK。

追加確認

ドキュメントに

Keep in mind this software will send various notification emails, dont't forget to edit your laravel app/config/mail.php file.

とあるように、色んな通知がメールで飛ぶらしいので app/config/mail.php の設定を確認しておくこと。

こちら -> Postfix Using Gmail SMTP in Mac OSX Mavericks のように、ローカルの Mac 上で Postfix を動かして Gmail 経由でメールを送信する設定をしてある場合は、

app/config/mail.php
return array(
    'driver' => 'smtp',
    'host' => 'localhost',
    'port' => 25,
    'from' => array('address' => 'xxx@localhost', 'name' => 'xxx xxxx'),
    'encryption' => false,
    'username' => null,
    'password' => null,
    'sendmail' => '/usr/sbin/sendmail -bs',
    'pretend' => false,
);

のような形でメールが送信されることを確認した。
テストメールを送るためのコードは ココ を参照して、 app/views/email/test.blade.php などのファイルを作り、 Mail::send() を利用したコードを書き、 app/route.php 内に無名関数として書いてその URL にアクセスするか、 artisan コマンドとして書く

Route に書く場合としては下記のようにした。

app/views/email/test.blade.php
Hello {{ $name }}.
app/route.php
Route::get('/MailTest', function()
{
    $data['name'] = 'xxx xxx';
    Mail::send('emails.test', $data, function($message)
    {
        $message->to('xxx@xxx')->subject('WWWelcome!!!');
    });
});

終わり

ドキュメント を見るに色んなフックや API がある (ユーザー作成後の処理など) ので、適宜カスタマイズ・利用する。

16
16
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
16
16