V1.0.7 的 setRowList() 方法导致模型的获取器无法调用

程序位置 /application/common/builder/table/Builder.php 的 setRowList() 方法,此方法升级后导致表格数据无法读取到 TP 获取器的数据
 
例子:
1. 先定义一个 Model ,在这个 Model 写一个TP获取器 
public function getNextTimeAttr($value, $data){
....
}
2. 在控制器里查询数据列表
$data_list = XxxxModel::where($map)->order($order)->paginate();
3. 使用 ZBuilder 构建表格
return ZBuilder::make('table')
->setPageTitle('标题')
->setTableName('数据表名')
->addColumns([ // 批量添加列
.....
['next_time', '下次预计时间'],
.....
])
->addTopButtons('add,delete')// 批量添加顶部按钮
->addRightButtons('edit,delete')// 批量添加右侧按钮
->setRowList($data_list)// 设置表格数据
->setPages($page)// 设置分页数据
->fetch(); // 渲染页面

这样生成的表格的 next_time 列读不到数据,而v1.0.6 就可以
 
已邀请:

dolphinphp

赞同来自:

对,1.0.7版本修改了,全部转为数组来使用,所以获取器和修改器就不起作用了,下个版本会做兼容。

要回复问题请先登录注册