centos7中怎么用shell腳本執(zhí)行l(wèi)aravel的路由?
在執(zhí)行php artisan migrate生成數(shù)據(jù)表之后,要生成一些初始數(shù)據(jù),
所以寫了個(gè)InitControler,里面就是一些方法,用于生成一些初始數(shù)據(jù)。
寫完后我要通過訪問路由來訪問這個(gè)控制器的方法,路由如下:
Route::get('init-users', 'InitController@initUsers');
Route::get('init-roles', 'InitController@initRoles');
//...
//...
//...
問題:
我想寫成一個(gè)shell腳本來訪問這些路由,而不是手動(dòng)把路由輸入到瀏覽器回車,應(yīng)該怎么寫這個(gè)shell腳本,請大神幫寫一下。
當(dāng)然通過自定義命令
php artisan make:console FooCommand
把代碼邏輯寫在FooCommand.php,然后通過php artisan
執(zhí)行,寫在shell腳本內(nèi)
可以利用shell模擬本地瀏覽的方式
curl http://localhost/XX/init-users
curl http://localhost/XX/init-roles
#....
#....
不過這個(gè)要求網(wǎng)站能夠被本地訪問
我換個(gè)思路怎么樣
就是不把初始化數(shù)據(jù)寫到C里,而是寫到migration文件里。
通常情況下,每個(gè)數(shù)據(jù)表會(huì)對應(yīng)一個(gè)migration文件,可以把對于該表的初始化數(shù)據(jù)寫到一個(gè)private方法了,在migration本身的up方法后,用$this->xxx(),調(diào)用一下即可。
這樣有幾個(gè)好處:初始化數(shù)據(jù)會(huì)隨著migrate同時(shí)初始化,還有就是初始化數(shù)據(jù)整齊的劃分的對應(yīng)的migration表中。
P.S. 因?yàn)槊總€(gè)migration還會(huì)對應(yīng)Model
,你還可以用model初始化數(shù)據(jù)。不是一般的爽。