命令行生成crud,传入多个relationmodel参数时,生成的文件中出现错误。crud.php的bug

发布于 2019-09-11 10:20:41

描述:文件位置\application\admin\command\Crud.php
文件第340行,在循环中执行了以下代码

$relationModel = isset($relationModel[$index]) ? $relationModel[$index] : '';

当relationModel参数为多个时,会将从cmd中读取的$relationModel参数【数组形式】重新赋值为字符串,导致第二个循环内的参数出错。

代码修正:第214行代码由
$relationModel = $input->getOption('relationmodel');
更改为
$relationModels = $input->getOption('relationmodel');
第340行代码由
$relationModel = isset($relationModel[$index]) ? $relationModel[$index] : '';
更改为
$relationModels = isset($relationModels[$index]) ? $relationModels[$index] : '';

我的生成命令:

php think crud --table=project --controller=projectmanage/manage/project --model=projectmanage/manage/Project --fields=id,name,projectstatus,endtime --relation=admin --relationmodel=Admin --relation=project_status --relationmodel=projectmanage/setting/ProjectStatus --relationforeignkey=admin_id --relationforeignkey=project_status_id --relationmode=belongsto --relationmode=belongsto --force=0

查看更多

关注者
0
被浏览
37
0 个回答
暂无答案,快来添加答案吧

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码手机浏览