#4 管理画面を作る(だけ)
管理画面を作りたい!しかし、まだ手をつけないのでとりあえず作りたい。
laravel-adminなるものが爆速できるっピよ。と聞いたので、そのとおりにインスト〜〜〜ルする。
composer require encore/laravel-admin
このコマンドを打ったら必要そうなものがインストールされてるぽい。
composer コンポーザーで
require パッケージを入れたい
encore/laravel-admin laravel-adminを!
というコマンドだ!次にこのコマンド。
php artisan vendor:publish --provider="Encore\Admin\AdminServiceProvider"
php phpで実行
artisan LaravelのCLI、artisanを使う
vendor:publish 指定パッケージに必要なものをプロジェクトに移動
--provider サービスプロバイダにAdminを追加する
vendor:publishは設定ファイルやなんだかんだのファイルを使える場所に移動・追記などしてくれるみたい。ほ〜便利ねえ。
サービスプロバイダとは、最初にロードされるやつ(イベントリスナとかフィルターとからしい)で、そのひとつとして登録してちょということ。
結局のところ、イカしたフレームワークも、書いたことしか実行できないので、地道な「これ読んで」「これ追記して」という作業が必要になるんだね。
php artisan admin:install
admin:install インストール
これでDBマイグレーションが走り、admin関係のテーブルが作成される。マイグレーションっていうのは、テーブル操作のこと。
URLの末尾に/adminとつけたら、管理画面が表示された!ワ〜イ
ID/PASSがわからなかったけど、調べたらadmin/adminだった。パスワードは適当に変更するとして、ログイン後はこんなかんじ。
パスワードを変えようとおじさんアイコンをクリックしてSettingを押すと、どうもエラーが出ている。
Disk [admin] not configured, please add a disk config in `config/filesystems.php`.
おけ!わかんないから検索しよ!
検索した。filesystems.phpに以下のように追記した(disks>admin)。
'disks' => [
(略)
'admin' => [
'driver' => 'local',
'root' => public_path('uploads'),
'visibility' => 'public',
'url' => env('APP_URL').'/uploads',
],
ページを再読み込みすると、public/uploadsが作れないよ!とエラーがでたので、パーミッションを設定する。
chown -R _www:staff public
これでいいのかな〜?わからんが…とにかくlogsなど、Apacheが作成するファイルは_www:staffだったのでそちらに合わせる。
動いた!やったー
パスワード変更、ログアウト、再ログインしたら成功したのでよかったぽよ
おじさんがアイコンなのが嫌なので、飼い猫しぃさんの画像をアップロードした。gitがそれも管理しまっせ!と言ってきたので、待て待て…と、gitignoreに追記した。
/public/uploads
アップロードは正しくできたみたいだけど、画像が表示されない。しょぼん…。
よく画像のパスを見たら、開発環境はドメインがkochikame.localhostなのに、画像のパスはlocalhostになってる。どこかに設定ファイルがあるな!
.envのAPP_URLを正しく設定したら画像がでた。よかったぽよ
とりあえず管理画面はできたっぽいので、次回はモデルを作る(はず。それがFWのセオリーかなーと思うけど、どーなのカナ???)
もし投稿が気に入ってもらえたら、サポートいただけるととても嬉しいです!