Laravel開発ではしょっちゅう使うartisanコマンド。 今回はコマンドの一覧を紹介します。
- 環境
- DB/Migration関連
- イベント関連
- クラスファイル作成関連
- 新しいコントローラーを作成する
- 新しいカスタム例外処理クラスを作成する
- 新しいファクトリを作成する
- 新しいジョブクラスを作成する
- 新しいメールクラスを作成する
- 新しいミドルウェアクラスを作成する
- 新しいマイグレーションファイルを作成する
- 新しいEloquentモデルを作成する
- 新しい通知クラスを作成する
- 新しいポリシークラスを作成する
- 新しいサービスプロバイダクラスを作成する
- 新しいフォームリクエストクラスを作成する
- 新しいリソースクラスを作成する
- 新しいバリデーションルールを作成する
- 新しいテストケースを作成する
- 通知用のデータベーステーブルを作成する
- セッション用のデータベーステーブルを作成する
- 最適化/キャッシュ関連
- セキュリティ関連
- ログイン関連
- タスクスケジュール/ジョブ関連
- コマンド関連
- メンテナンスモード関連
- その他
- 非推奨コマンド
環境
Laravel Framework 5.5.40
DB/Migration関連
データベースの移行(マイグレーション)を実行する
「migrate」
php artisan migrate
全てのマイグレーションを実行します。
MigrateとSeedingを同時に実行する
「migrate --seed」
php artisan migrate --seed
全てのマイグレーションとシーディングを実行します。
全てのテーブルを削除し、Migrateを実行する
「migrate:fresh」
php artisan migrate:fresh
Migrate用テーブルを作成する
「migrate:install」
php artisan migrate:install
全Migrateクラスのテーブルデータを削除後、Migrateを実行する
「migrate:refresh」
php artisan migrate:refresh php artisan migrate:refresh --seed
データベース全体を1から作り直すときに使用する。
seedオプションをつけるとリフレッシュ後にシードを実行します。
全マイグレーションをロールバックする
「migrate:reset」
php artisan migrate:reset
最後に実行したマイグレーションをロールバックする
「migrate:rollback」
//1回分のロールバック php artisan migrate:rollback //3回分のロールバック php artisan migrate:rollback --step=3
stepオプションを付けると、指定した回数分のロールバックを行います。
Migrationファイルの実行状況を確認する
「migrate:status」
php artisan migrate:status
新しいシーダークラスファイルを作成する
「make:seeder」
php artisan make:seeder [クラス名] php artisan make:seeder UsersTableSeeder
laravel/database/seeds/UsersTableSeeder.phpが作成されます。
シーダ(初期値設定)クラスで設定したデータをデータベースに入れる
「db:seed」
//DatabaseSeederクラスの中に指定した全てのクラスが対象 php artisan db:seed //指定したクラス(ここではUsersTableSeeder)のみ対象 php artisan db:seed --class=UsersTableSeeder
classオプションで対象クラスを指定できます。
イベント関連
EventServiceProviderの登録されていないイベントとリスナーを作成する。
「event:generate」
php artisan event:generate
laravel/app/Providers/EventServiceProvider.phpに設定したイベントとリスナーが作成されます。
新しいイベントクラスを作成する
「make: event」
php artisan make: event [クラス名] php artisan make: event OrderShipped
laravel/app/Events/OrderShipped.phpが作成されます。
新しいリスナークラスを作成する
「make:listener」
php artisan make:listener [クラス名] php artisan make:listener OrderShipped
laravel/app/Listeners/OrderShipped.phpが作成されます。
クラスファイル作成関連
新しいコントローラーを作成する
「make:controller」
php artisan make:controller [コントローラークラス名] php artisan make:controller HogeController //resourceオプションをつければリソースコントローラが作成される php artisan make:controller HogeController --resource
laravel/app/Http/Controllers/HogeController.phpが作成されます。
新しいカスタム例外処理クラスを作成する
「make:exception」
php artisan make:exception[クラス名] php artisan make:exception ValidationException
laravel/app/Exceptions/ValidationException.phpが作成されます。
新しいファクトリを作成する
「make:factory」
php artisan make:factory [クラス名] php artisan make:factory PostFactory //modelオプションでファクトリが生成するモデルの名前を指定できます。 php artisan make:factory PostFactory --model=Post
laravel/database/factories/PostFactory.phpが作成されます。
新しいジョブクラスを作成する
「make:job」
php artisan make:job [クラス名] php artisan make:job ProcessPodcast
laravel/app/Jobs/ProcessPodcast.phpが作成されます。
新しいメールクラスを作成する
「make:mail」
php artisan make:mail [クラス名] php artisan make:mail OrderShipped
laravel/app/Mail/OrderShipped.phpが作成されます。
新しいミドルウェアクラスを作成する
「make:middleware」
php artisan make:middleware [クラス名] php artisan make:middleware CheckAge
laravel/app/Http/Middleware/CheckAge.phpが作成されます。
新しいマイグレーションファイルを作成する
「make:migration」
php artisan make:migration [クラス名] php artisan make:migration create_users_table //createかtableオプションでテーブル作成の雛形も生成される php artisan make:migration create_users_table --create=users
laravel/database/migrations/20xx_xx_xx_xxxxxx_ create_users_table.phpが作成されます。
基本的にはオプションを付けて使用します。
新しいEloquentモデルを作成する
「make:model」
php artisan make:model [クラス名] php artisan make:model User //-mか--migrationオプションでマイグレーションも作成される php artisan make:model User -m
laravel/app/User.phpが作成される。
新しい通知クラスを作成する
「make:notification」
php artisan make:notification [クラス名] php artisan make:notification InvoicePaid
laravel/app/Notifications/InvoicePaid.phpが作成される。
新しいポリシークラスを作成する
「make:policy」
php artisan make:policy [クラス名] php artisan make:policy PostPolicy
laravel/app/Policies/PostPolicy.phpが作成される。
新しいサービスプロバイダクラスを作成する
「make:provider」
php artisan make:provider [クラス名] php artisan make:provider RiakServiceProvider
laravel/app/Providers/RiakServiceProvider.phpが作成されます。
新しいフォームリクエストクラスを作成する
「make:request」
php artisan make:request [クラス名] php artisan make:request StoreBlogPost
laravel/app/Http/Request/StoreBlogPost.phpが作成されます。 複雑なバリデーションの際に使うと便利。
新しいリソースクラスを作成する
「make:resource」
php artisan make:resource [クラス名] php artisan make:resource UserResource
laravel/app/Http/Resources/UserResource.phpが作成されます。
新しいバリデーションルールを作成する
「make:rule」
php artisan make:rule [クラス名] php artisan make:rule Uppercase
laravel/app/Rules/Uppercase.phpが作成されます。
新しいテストケースを作成する
「make:test」
php artisan make:test [クラス名] //Featureディレクトリにテストクラスを作成 php artisan make:test UserTest //Unitディレクトリにテストクラスを作成 php artisan make:test UserTest --unit
unitオプションをつけるかどうかで、作成されるディレクトリが変わります。
通知用のデータベーステーブルを作成する
「notifications:table」
php artisan notifications:table
セッション用のデータベーステーブルを作成する
「session:table」
php artisan session:table
最適化/キャッシュ関連
コンパイルされたクラスファイルを削除する
「clear-compiled」
php artisan clear-compiled
以下のファイルが削除されます。
- /bootstrap/cache/services.json
- /bootstrap/cache/compiled.php
期限切れのパスワードリセットトークンをフラッシュする
「auth:clear-resets」
php artisan auth:clear-resets
キャッシュを削除する
「cache:clear」
php artisan cache:clear
キャッシュから指定した項目を削除する
「cache:forget」
php artisan cache:forget [項目] //keyという項目を削除 php artisan cache:forget key
キャッシュ用のデータベーステーブルを作成する
「cache:table」
php artisan cache:table
キャッシュファイルを作成する
「config:cache」
php artisan config:cache
キャッシュファイルを削除する
「config:clear」
php artisan config:clear
コンパイルしたviewファイルを削除
「view:clear」
php artisan view:clear
ルートのキャッシュファイルを作成する
「route:cache」
php artisan route:cache
ルートのキャッシュファイルを削除する
「route:clear」
php artisan route:clear
セキュリティ関連
アプリケーションキーを作成し設定する
「key:generate」
php artisan key:generate
セキュリティのため、Laravelインストール後に最初に行います。
ログイン関連
Laravelの基本的なログイン機能を生成する。
「make:auth」
php artisan make:auth
タスクスケジュール/ジョブ関連
すべての失敗したジョブを一覧表示する
「queue:failed」
php artisan queue:failed
失敗したジョブ用のデータベーステーブルを作成する
「queue:failed-table」
php artisan queue:failed-table
失敗したジョブを全て削除する
「queue:flush」
php artisan queue:flush
失敗したジョブを指定して削除する
「queue:forget」
php artisan queue:forget [Job ID] php artisan queue:forget 5
上のコマンドではジョブIDが5のジョブを削除します。
ジョブを実行する
「queue:listen」
php artisan queue:listen php artisan queue:listen --timeout=60 --sleep=5 --tries=3
タイムアウト、スリープ、最大試行回数などのオプションをつけることができます。
現在のジョブの後でキューワーカーデーモンを再起動する
「queue:restart」
php artisan queue:restart
失敗したジョブを再試行する
「queue:retry」
php artisan queue:retry [Job ID] //ジョブIDが5のジョブのみ再試行する php artisan queue:retry 5 //全てのジョブを再試行する php artisan queue:retry all
ジョブIDやallを指定できます。
ジョブ用のデータベーステーブルを作成する
「queue:table」
php artisan queue:table
ジョブを実行する
「queue:work」
php artisan queue:work php artisan queue: work --timeout=60 --sleep=5 --tries=3
タイムアウト、スリープ、最大試行回数などのオプションをつけることができます。
タスクスケジュールを実行します。
「schedule:run」
php artisan schedule:run
cron設定ファイルに記述します。
コマンド関連
コマンドのヘルプを表示する。
「help」
php artisan help
コマンドのリストを表示する
「list」
php artisan list
artisanコマンドを作成する。
「make:command」
php artisan make:command [コマンドクラス名] php artisan make:command HogeCommand
laravel/app/Console/Commands/HogeCommand.phpが作成されます。
メンテナンスモード関連
アプリケーションをメンテナンスモードにする
「down」
php artisan down
メンテナンスモードを解除する
「up」
php artisan up
サーバーを起動する
「serve」
php artisan serve
ローカルで付属のサーバーが起動します。Homestead利用の場合は使わないと思います。
その他
現在のフレームワーク環境変数を表示する
「env」
php artisan env
スカフォールドを切り替える
「preset」
php artisan preset react
上のコマンドでVueのスカフォールドをReactのスカフォールドへ簡単に変更します。
Reactを使ったJavascriptアプリケーションを構築したい時などに使用します。
対話型のシェルを使う
「tinker」
php artisan tinker
namespace(名前空間)を設定する
「app:name」
php artisan app:name [新しいnamespece] //namespaceをhogeに設定 php artisan app:name hoge
デフォルトのnamespaceはapp。
名言を表示する
「inspire」
php artisan inspire
偉人たちの名言を見ることができます。
登録されている全てのルートを表示する
「route:list」
php artisan route:list
"public/storage"から"storage/app/public"へシンボリックリンクを張る
「storage:link」
php artisan storage:link
ベンダーパッケージからパブリッシュ可能なアセットをパブリッシュする
「vendor:publish」
php artisan vendor:publish
キャッシュされたパッケージマニフェストを再構築する
「package:discover」
php artisan package:discover
非推奨コマンド
フレームワークの最適化をする(非推奨)
php artisan optimize
以上、artisanコマンドの一覧まとめでした。
今後それぞれの使い方も記事にしていきますのでよろしくお願いします。