-
Notifications
You must be signed in to change notification settings - Fork 1
Laravelコマンド集
y.imamura edited this page May 26, 2018
·
17 revisions
$ php artisan --version
Laravel Framework 5.5.28
$ php artisan serve
$ php artisan serve --host 192.168.33.1 --port 8000
-
--host
アクセス許可するホストIPを指定。デフォルトは127.0.0.1
-
0.0.0.0
と指定するとアクセスを全て許可する。
-
-
--port
サービスのポートを指定。デフォルトは8000
https://github.com/ucan-lab/tips/issues/32
$ php artisan list
$ php artisan route:list
登録されているルーティングを一覧表示する。
$ php artisan key:generate
APP_KEY=
を生成する。 create-project
でインストールした際は自動的に実行されている。
$ php artisan make:auth
ログイン画面とユーザ登録画面のビューとルートのひな形を生成してくれる。 ログイン機能を作りたい場合はこのコマンドを実行してから作り込んでいくと良い。
$ php artisan tinker
tinkerとはLaravelでプログラムを対話的に扱える、ちょっとした動作確認に使える便利なシステムです。
makeコマンドは各ファイルのひな形を生成してくれる便利コマンドです。
仕様用途が高いと思われるものを抜粋して紹介します。
コマンドを叩かず、直接ファイルを作っても全然okです。
$ php artisan make:model Post
$ php artisan make:model Post -a
app
へモデルのひな形を生成する。
-
-m
マイグレーションのひな形を生成 -
-f
ファクトリーのひな形を生成 -
-c
空のコントローラのひな形を生成 -
-r
リソースコントローラのひな形を生成 -
-a
マイグレーション、ファクトリー、リソースコントローラを生成
$ php artisan make:migration create_posts_table --create=posts
$ php artisan make:migration add_user_id_to_posts_table --table=posts
-
--create
テーブル作成のマイグレーション -
--table
テーブル変更のマイグレーション
database/migrations
へマイグレーションファイルのひな形を生成する。
$ php artisan make:seeder PostsTableSeeder
database/seeds
へシーダーのひな形を生成する。
$ php artisan make:factory PostFactory
$ php artisan make:factory PostFactory -m Post
database/factories
へファクトリーのひな形を生成する。
-
-m
モデルを指定する
$ php artisan make:controller PostsController
$ php artisan make:controller PostsController -r
$ php artisan make:controller PostsController -m Post
app/Http/Controllers
へコントローラを生成する。
-
-r
リソースに対応するメソッドのひな形を生成 -
-m
リソース+モデルルートバインディングしたひな形を生成
$ php artisan make:request PostRequest
$ mkdir resources/views/posts
$ touch resources/views/posts/{index,show,create,edit,_form}.blade.php
ビューファイルを生成するmakeコマンドはないので自分で作成します。
make系のコマンドはまだまだ他にもたくさんあります。
今回は使用頻度が高そうなものを取り上げてます。
$ php artisan list | grep make
make
make:auth Scaffold basic login and registration views and routes
make:command Create a new Artisan command
make:controller Create a new controller class
make:event Create a new event class
make:exception Create a new custom exception class
make:factory Create a new model factory
make:job Create a new job class
make:listener Create a new event listener class
make:mail Create a new email class
make:middleware Create a new middleware class
make:migration Create a new migration file
make:model Create a new Eloquent model class
make:notification Create a new notification class
make:policy Create a new policy class
make:provider Create a new service provider class
make:request Create a new form request class
make:resource Create a new resource
make:rule Create a new validation rule
make:seeder Create a new seeder class
make:test Create a new test class
マイグレートはテーブル構成の履歴管理機能です。
$ php artisan migrate
$ php artisan migrate:rollback
$ php artisan migrate:status
$ php artisan migrate:reset
$ php artisan migrate:fresh
$ php artisan db:seed
テストデータを投入する。
$ php artisan route:clear
$ php artisan view:clear
$ php artisan config:clear
$ php artisan cache:clear
$ php artisan clear-compiled
以下2つのファイルを削除する。
/bootstrap/cache/services.json
/bootstrap/cache/compiled.php
$ artisan route:cache
- ルーティング定義をbase64_encodeで以下ファイルに出力
/bootstrap/cache/routes.php
- 注意点: クロージャ定義のルーティングがあると、最適化されずエラーになる
-
/bootstrap/cache/routes.php
が作成されず通常のルーティングアクセス - アクセスできなくなるわけではない
-
$ php artisan config:cache
-
/bootstrap/cache/config.php
config 以下の設定ファイルを「var_export」して以下ファイルに出力
フレームワークのコードを結合して一つのファイルに纏める
$ php artisan optimize
/bootstrap/cache/compiled.php
-
/config/compile.php
の files ブロックににキャッシュ対象のクラスを書けば一緒に結合される
$ composer dump-autoload
- autoloadを自動で生成してくれる
vendor/composer/autoload_classmap.php
vendor/composer/autoload_files.php
vendor/composer/autoload_namespaces.php
vendor/composer/autoload_psr4.php
vendor/composer/autoload_real.php
vendor/composer/autoload_static.php
- 新たなクラス定義やファイル定義を行うたびに実行する
- composer installでパッケージインストールと同時に実行される