Laravel7との違い
①ルートファイルの書き方
Laravel7では以下の様な記述でしたが、
<?php use Illuminate\Support\Facades\Route; Route::get('/home', 'SampleController@index');
Laravel8ではuseでクラス名を指定し、[クラス名, 'メソッド名']で括る様な記述になりました。
<?php use Illuminate\Support\Facades\Route; use App\Http\Controllers\SampleController; Route::get('/home', [SampleController::class, 'index']);
②Modelsディレクトリの位置
php artisan make:model Post
Laravel7では
Laravel8からは
Jetstreamとは
Laravel8から新パッケージ「Jetstream」が導入されました。
何が出来るのかというと、Laravelにアプリケーションのスカフォールドを提供し、
ログイン、ユーザー登録、メール検証、2要素認証、セッション管理、Laravel Sanctumを介したAPIサポート、
およびオプションとしてチーム管理機能を含みます。
JetstreamはTailwindCSSを使用して設計されており、
フロントエンドスタックとして、LivewireとInertia.jsから選択して利用します。
Jetstreamを導入してみよう
まずLaravel8のプロジェクトを作成します。
ComposerでJetstreamをインストールします。
composer require laravel/jetstream
インストール後、jetstream:install
Artisanコマンドを実行しフロントエンドスタックを導入します。(livewireかinertia)
簡単に説明すると、
livewire
- PHP + Bladeで作成されたscaffolding(プロファイル画面など)
inertia
- vue.jsで作成されたscaffolding(プロファイル画面など)
PHPでフロント部分、バックエンド部分共に実装したい方は、livewire。
この部分に関してはドキュメントを読むことをお勧めします。
php artisan jetstream:install livewire --teams #チーム管理機能が不必要な場合、引数なし
インストールできたら、NPM依存をインストール・構築し、データベースをマイグレートします。
npm install && npm run dev php artisan migrate
再度ブラウザをリロードします。
registerでユーザー登録しログインすると、「登録したユーザー名’s team」にオーナとして自動的に割り振られます。
「登録したユーザー名’s team」-> Team Settings からチームにメンバーを追加できます。
その際に役割、権限なども同時に割り振ることもできます。
また役割、権限の追加、変更に関しては、 app/Providers/JetstreamServiceProvider.php より変更可能です。
<?php protected function configurePermissions() { Jetstream::defaultApiTokenPermissions(['read']); Jetstream::role('admin', __('Administrator'), [ 'create', 'read', 'update', 'delete', ])->description(__('Administrator users can perform any action.')); Jetstream::role('editor', __('Editor'), [ 'read', 'create', 'update', ])->description(__('Editor users have the ability to read, create, and update.')); ------- 追記 ------- Jetstream::role('checker', __('Checker'), [ 'read', 'update', 'delete', ])->description(__('Checker users have the ability to read, update, and delete.')); }
再度、「登録したユーザー名’s team」-> Team Settings を開くと、「Checker」が追加されました。
〜最後に〜
Wizではエンジニアを募集しています!!
興味のある方は是非覗いてみてください!↓