一緒にお仕事させてもらってるLaravelの案件で、Laravel Novaを使う場面がでてきたので、いろいろ調べたことを何回かに分けて記事にしていきたいと思います。今回は導入編ってことで、Laravel Novaをインストールしていきます。
Laravel Novaとは
Laravelの開発者であるTaylor Otwellが発表した公式の管理画面作成用のパッケージとなっています。 フロントエンドではVue.jsやVue Router、Tailwind.cssが使用されたSPAで構築されており、優れたデザイン性を持った管理画面を構築することができます。 Eloquentモデルに触れることなく、既存のLaravelアプリケーションに簡単に導入することが可能で、その他にもいろいろな機能を持っており、簡単な操作でカスタマイズができるようになっています。
Laravel Nova - Beautifully-designed administration panel for Laravel
要件
- Composer
- Laravel Framework 5.6+
- Laravel Mix
- Node.js & npm
なお、Laravel Novaは有償となっており、使用するにはサイト毎にライセンスの購入が必要となります。 ライセンスの購入はこちらから。
インストール
Laravel Novaをインストールするには2種類の方法があり、一つはNovaソースコードを含むzipファイルを直接ダウンロードしてインストールする方法、もう一つはNovaのプライペートリポジトリを使用してComposer経由でインストールする方法です。
今回は後者のNovaのプライペートリポジトリを使用したインストール方法について紹介したいと思います。
まずはcomposer.json
にNovaリポジトリを追加します。
"repositories": [ { "type": "composer", "url": "https://nova.laravel.com" } ],
composer.json
にlaravel/nova
のパッケージを追加します。
"require": {
"php": "^7.1.3",
"fideloper/proxy": "^4.0",
"laravel/framework": "5.6.*",
+ "laravel/nova": "~1.0"
},
そしてcomposer update
を実行します。
$ composer update
この時、以下のように資格情報が求められます。
これらの資格情報は、Novaソースコードをダウンロードする権限を持っているとしてComposerセッションを認証します。自動で資格情報を入力するようにするには、auth.json
ファイルを作成します。
auth.json
を以下のようにユーザーとパスワードを入力し、composer.json
と同じプロジェクトの直下に配置します。
{ "http-basic": { "nova.laravel.com": { "username": "{ユーザー}", "password": "{パスワード}" } } }
次にnova:install
、migrate
を実行し、novaのサービスプロバイダとアセットファイル等をアプリケーション内にインストールします。
$ php artisan nova:install $ php artisan migrate
nova:publish
コマンドを実行し、アセットファイル等をpublicディレクトリにコピーします。
$ php artisan nova:publish
ここまででインストール完了なので、実際に管理画面にアクセスしてみます。
管理画面にアクセス
デフォルトは/nova
で管理画面にアクセスすることができます。
※/nova
は変更可能
標準では認証にUsersテーブルが利用されるので、登録済みのユーザーでログインします。 すでにUsersリソースはNova上で操作ができる状態になっています。
パッケージをインストールしていくつかのコマンドを入力すれば、あっという間にここまで作ることができてとても便利です。
次回はNova上で各リソースの扱い方について書いていきたいと思います。