2022-02-20に更新

【自分用メモ】php artisanコマンド一覧

1. コントローラ(Controller)関連

1-1. コントローラの作成

php artisan make:controller [Controller名]
  • [Controller名]には拡張子は不要。
  • [Controller名]の命名は「○○Controller」とするのが一般的。

1-2. RESTコントローラの作成

php artisan make:controller [RESTコントローラ名] --resource
  • オプション「--resource」を付けることで、作成されるコントローラにCURD関係のメソッドを自動的に追加してくれる。

2. ビュー(View)関連

2-1. サービスプロバイダの作成

php artisan make:provider [Provider名]
  • [Provider名]の命名は「○○Provider」とするのが一般的。

2-2. ペジネーションのテンプレートファイルの作成

php artisan vendor:publish --tag=laravel-pagination
  • ペジネーション:大量データを一定件数ずつ表示するための仕組み。

3. モデル(database)関連

3-1. マイグレーションファイルの作成

php artisan make:migration [マイグレーションファイル名]
  • [マイグレーションファイル名]の命名は「create_[テーブル名]_table」とするのが一般的。
php artisan session:table
  • セッション管理用テーブルのマイグレーションファイルを作成する。

3-2. マイグレーション実行

php artisan migrate
php artisan migrate:refresh
php artisan migrate:refresh -–seed
php artisan migrate:reset
  • 「migrate:refresh」とすることで、テーブルの再作成を行うことが出来る。
  • 「migrate:refresh」にオプション「-–seed」を追加すると、テーブル再作成後にシーディングを実行してくれる。
  • 「migrate:reset」とすることで、全ての作成済みテーブルを削除することが出来る。

3-3. シーダーファイルの作成

php artisan make:seeder [シーダーファイル名]
  • [シーダーファイル名]の命名は「[テーブル名]TableSeeder」とするのが一般的。

3-4. シーディングの実行

php artisan db:seed
php artisan db:seed --class=[シーダーファイル名]
  • 「-class」オプションを指定すると、シーディングファイルを指定して実行できる。

3-5. モデルの作成

php artisan make:model [モデル名]
  • [モデル名]はテーブルの単数形とするのが一般的。
    例)テーブル:people → モデル:Person(先頭大文字)

4. Request,Response関連

4-1. ミドルウェアの作成

php artisan make:middleware [Middleware名]
  • [Middleware名]の命名は「○○Middleware」とするのが一般的。

4-2. フォームリクエストの作成

php artisan make:request [Request名]
  • [Request名]の命名は「○○Request」とするのが一般的。

4-3. バリデーションルールの作成

php artisan make:rule [Rule名]

・命名規則は特になし。

参考

PHPフレームワーク Laravel入門 第2版
https://www.amazon.co.jp/dp/4798060992/ref=cm_sw_r_tw_dp_47YACT8WRZY9QG47TJ68
Laravel マイグレーション(migration)の基本
https://noumenon-th.net/programming/2020/01/17/laravel-migration/
LaravelのSeeding機能を利用してダミーデータを一括挿入
https://reffect.co.jp/laravel/larave-seeding-store-data-in-database#Seed
Laravel 8.x データベース:シーディング
https://readouble.com/laravel/8.x/ja/seeding.html

ツイッターでシェア
みんなに共有、忘れないようにメモ

acmz

ゲーム好きのおっさんSE。 Unityでゲーム開発勉強中。最近はLalavel、Vue.js、SCSSも勉強中。

Crieitは誰でも投稿できるサービスです。 是非記事の投稿をお願いします。どんな軽い内容でも投稿できます。

また、「こんな記事が読みたいけど見つからない!」という方は是非記事投稿リクエストボードへ!

有料記事を販売できるようになりました!

こじんまりと作業ログやメモ、進捗を書き残しておきたい方はボード機能をご利用ください。
ボードとは?

コメント