centos7中怎么用shell脚本执行laravel的路由?
phpcn_u1582
phpcn_u1582 2017-05-16 16:47:35
0
3
536

centos7中怎么用shell脚本执行laravel的路由?

在执行php artisan migrate生成数据表之后,要生成一些初始数据,
所以写了个InitControler,里面就是一些方法,用于生成一些初始数据。
写完后我要通过访问路由来访问这个控制器的方法,路由如下:

Route::get('init-users', 'InitController@initUsers');
Route::get('init-roles', 'InitController@initRoles');
//...
//...
//...

问题:
我想写成一个shell脚本来访问这些路由,而不是手动把路由输入到浏览器回车,应该怎么写这个shell脚本,请大神帮写一下。

phpcn_u1582
phpcn_u1582

全部回复(3)
黄舟

当然通过自定义命令

php artisan make:console FooCommand

把代码逻辑写在FooCommand.php,然后通过php artisan 执行,写在shell脚本内

淡淡烟草味

可以利用shell模拟本地浏览的方式

curl http://localhost/XX/init-users
curl http://localhost/XX/init-roles
#....
#....

不过这个要求网站能够被本地访问

我想大声告诉你

我换个思路怎么样
就是不把初始化数据写到C里,而是写到migration文件里。
通常情况下,每个数据表会对应一个migration文件,可以把对于该表的初始化数据写到一个private方法了,在migration本身的up方法后,用$this->xxx(),调用一下即可。
这样有几个好处:初始化数据会随着migrate同时初始化,还有就是初始化数据整齐的划分的对应的migration表中。

P.S. 因为每个migration还会对应Model
,你还可以用model初始化数据。不是一般的爽。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板