Laravel 常用指令
Laravel 常用指令
前言
要活用 Laravel 框架則需要很好地使用 Artisan CLI,
不過官網文件的指令比較分散於各章節。
本文簡單整理一些常用的 Artisan 指令,
以及一些常用的指令選項,
未來也會逐步補充方便速查。
about
快速瀏覽專案的設定、驅動設定、與環境設定
查看專案全部設定
php artisan about
查看專案部分設定
php artisan about --only=environment
php artisan about --only=cache
php artisan about --only=drivers
輸出 JSON 格式
php artisan about --json
serve
開發用的伺服器
啟動伺服器
php artisan serve
修改位址
預設的主機位址是 127.0.0.1
,可透過 host
選項更改
php artisan serv --host=127.0.0.100
修改通訊埠
預設是 port 是 8000
,可透過 port
選項更改
php artisan serv --port=9999
migrate
資料庫遷移指令
建立遷移指令
資料表名稱命名慣例為複數型態,
執行後會在專案目錄內的 /database/migrations/
內出現建立的資料表結構,
檔案名稱會加上時間戳來排定執行順序。
已經執行過的遷移指令會被記錄在資料庫內不會再執行。
php artisan make:migration create_examples_table
建立於指定的路徑下
可透過 path
選項加上指定的路徑
php artisan make:migration create_examples_table --path=/database/migrations/test
執行遷移指令
一般不加入任何選項時,預設為 /database/migrations
下的檔案,
php artisan migrate
執行指定的路徑下的遷移指令
可透過 path
選項加上指定的路徑,路徑下的遷移檔會被執行
php artisan migrate --path=/database/migrations/test
強制執行遷移
一般使用執行遷移指令時,如果資料表已經存在於資料庫內,
或是執行會導致資料遺失的動作,會出現警告要求重複確認。
此時可透過 force
選項進行強制遷移。
不作死不會死
強烈建議不要在正式環境使用這選項!
否則......從刪資料庫到跑路......這邊概不負責的唷。
php artisan migrate --path=/database/migrations/test --force
復原遷移指定步驟
可透過 step
回滾特定步數。
php artisan migrate:rollback
php artisan migrate:rollback --step=5
復原遷移全部步驟
該指令會先把所以指令回滾,
然後再執行遷移指令。
重建整個資料庫比較安全的做法。
php artisan migrate:refresh
復原遷移可選指令
一樣可以指令執行路徑與強制選項
php artisan migrate:refresh --path=/database/migrations/test --force
重置遷移
與上面的 refresh
不同,fresh
會刪除所有資料表後才執行全部的遷移。
php artisan migrate:fresh
不作死不會死
逆向遷移
安裝這個套件 laravel-migrations-generator 才能使用下方的指令,
通常用於想要用新框架改寫系統,但已存在既有的資料庫的情境。
php artisan migrate:generate --connection="連線名稱"
php artisan migrate:generate --connection="database_old"
php artisan migrate:generate --tables="table1,table2,table3,table4,table5"
php artisan migrate:generate --ignore="table3,table4,table5"
component
Laravel 7 之後新增的指令,
功能上與過去的 Section 、 Layout 、 Include 類似,
使用上的觀念類似前端的 Slot 概念。
建立具名元件
元件會新增在 app/View/Components
與 resources/views/components
目錄中
php artisan make:component Alert
也可以在子資料夾內建立元件
php artisan make:component Forms/Input
建立匿名元件
加入 view
選項建立匿名元件,
可通過 <x-forms.input />
讓 Blade 自動去找對應目錄下的匿名元件,
一般來說比較推薦用匿名元件就可以了。
php artisan make:component forms.input --view
test
建立測試
建立新測試案例,檔案會被新增在 tests/Feature
目錄下
php artisan make:test UserTest
或是可加上路徑來歸類資料夾目錄
php artisan make:test Fake/ConvertTest
執行測試
執行全部的測試,測試結果會出現於 CLI 害面。
php artisan test
加入 filter
選項,方法名 測試文件路徑。
注意
TTY 模式不支援 Windows 平台。
php artisan test
php artisan test --filter {ClassName::TestMethodName} {FilePath}
php artisan test --filter ConvertTest::test_example Tests\Feature\Fake