官方文档:

https://ask.fastadmin.net/article/323.html

达到第10点的效果。反正我是没看懂。然后,自己搜索了很多,都是千篇一律的抄袭官方文档的那几句话。

真正有用的参考文档:

https://ask.fastadmin.net/question/1933.html

然后,贴上自己写的代码:

控制器中:

//引入关联模型
use app\admin\model\source\Unit as UnitModel;

//查看
public function index()
{
    //设置过滤方法
    $this->request->filter(['strip_tags']);
    if ($this->request->isAjax()) {
        //如果发送的来源是Selectpage,则转发到Selectpage
        if ($this->request->request('keyField')) {
            return $this->selectpage();
        }
//使用模型,查找对应的字段。这里还可以添加where条件进行筛选
        $typeName = UnitModel::column('id,title');
        list($where, $sort, $order, $offset, $limit) = $this->buildparams();
        $total = $this->model
            ->where($where)
            ->order($sort, $order)
            ->count();

        $list = $this->model
            ->where($where)
            ->order($sort, $order)
            ->limit($offset, $limit)
            ->select();

        $list = collection($list)->toArray();
//处理数组。我这里,是一对一的关系
        foreach ($list as $k => &$v)
        {
            $v['type_text'] = isset($typeName[$v['unit']]) ? $typeName[$v['unit']] : "";
        }
        unset($v);
        $result = array("total" => $total, "rows" => $list);
        return json($result);
    }
    return $this->view->fetch();
}

js部分:

把:
{field: 'unit', title: __('Unit')},
改为:
{field: 'type_text', title: __('Unit'),operate:false,formatter: Table.api.formatter.label},

效果展示:

fastadmin里面 列表页展示分类名称

如果是一对多的话,请参我发的有用的那个文档。

相关文章: