常用 artisan 命令
檢視框架版本
php artisan --version
生成
key
php artisan key:generate
生成中介軟體
例如,生成Auth
中介軟體,預設位於app/Http/Middleware
php artisan make:middleware Auth
生成監聽器
php artisan event:generate
預設Listeners
資料夾是約定俗成的監聽器命名生成控制器
php artisan make:controller CategoriesController
預設位於
app/Http/controllers
下生成模型
生成User
模型類,預設位於app/User.php
php artisan make:model User
生成指定目錄
Models
的模型類User
,位於app/Models/User.php
php artisan make:model Models/User
生成指定目錄的模型類User,位於
app/Models/User.php
,且建立資料遷移檔案,位於database/migrations/
下php artisan make:model Models/User -m
-m
表示同時建立模型資料遷移檔案Tinker
可以作為簡單的程式碼測試php artisan tinker
資料遷移、回滾、初始化資料
建立資料庫遷移檔案,遵照如
add_column_to_table
這樣的命名規範php artisan make:migration add_avatar_and_introduction_to_users_table --table=users
該命令會生成資料遷移檔案,位於
database/migrations/
目錄下,其檔名為 :2020_09_11_194302_add_avatar_and_introduction_to_users_table.php
--table
表示修改指定表--create
表示建立一個新表
執行遷移的命令如下:
php artisan migrate
資料回滾
php artisan migrate:rollback
回滾上一次的遷移php artisan migrate:reset
回滾所有遷移php artisan migrate:refresh
回滾所有遷移並且再執行一次
初始化資料,命名規範建議
seed_(資料庫表名稱)_data
的格式, 可用於資料初始化php artisan make:migration seed_categories_data
生成的遷移檔案位於
database/migrations/
中,檔名{timestamp}_seed_categories_data.php
資料工廠/資料填充
四部曲- 資料模型
Topic.php
- 話題的資料工廠
database/factories/TopicFactory.php
- 話題的資料填充
database/seeds/TopicsTableSeeder.php
- 註冊資料填充
database/seeds/DatabaseSeeder.php
php artisan db:seed #執行資料填充
該命令會執行
database/seeds/DatabaseSeeder.php
檔案中的run
方法.php artisan migrate:refresh --seed
migrate:refresh
命令會回滾資料庫的所有遷移,並執行migrate
命令,--seed
選項會同時執行db:seed
命令。- 資料模型
表單請求驗證
php artisan make:request UserRequest
執行成功後會生成以下檔案:
app/Http/Requests/UserRequest.php
繼承
Illuminate\Foundation\Http\FormRequest
authorize()
該方法是表單驗證自帶的一個許可權驗證
功能rules()
該方法是定義表單驗證規則messages()
該方法重寫驗證規則訊息
建立授權策略類
php artisan make:policy UserPolicy #建立的檔案位於 `app/Policies` 目錄下
Redis
佇列queue:failed-table
命令來建立 failed_jobs 表的遷移檔案, 會新建database/migrations/{timestamp}_create_failed_jobs_table.php
檔案,當任務超出這個重試次數後,它就會被插入到 failed_jobs 資料表裡面php artisan queue:failed-table
生成任務處理類,該命令會在
app/Jobs
目錄下生成一個新的類:app/Jobs/TranslateSlug.php
php artisan make:job TranslateSlug
啟動佇列系統,佇列在啟動完成後會進入監聽狀態
php artisan queue:listen
生成資料通知頻道的資料遷移檔案
php artisan notifications:table
生成通知類,預設位於
app/Notifications/TopicReplied.php
php artisan make:notification TopicReplied
生成
cli
命令類php artisan make:command CalculateActiveUser --command=larabbs:calculate-active-user
--command
是指定Artisan
呼叫的命令,一般情況下,我們推薦為命令加上名稱空間,如本專案的larabbs:
本作品採用《CC 協議》,轉載必須註明作者和本文連結