假设selectpage下拉列表,拉取的时候分类的信息, 这分类信息有 zh_name, en_name, short_name, 三个字段组成, 并且需要全部展示出来.

那么在model模型文件里面, 设置一个不存在的 cate_text 字段属性, 然后设置 cate_text字段属性

// 追加属性
protected $append = [
    'cate_text',
];

public function getCateTextAttr($value, $data)
{
    return $data['zh_name'] . $data['en_name'] . $data['short_name'];
}

前端 add.html 和 edit.html写法:

<input id="c-cate_id" data-source="cate/index" data-field="cate_text" data-order-by="id desc" data-search-field="zh_name,en_name,short_name" class="form-control selectpage" name="row[cate_id]" type="text" value="">

由于selectpage默认读取是name字段, 那么 添加了 data-field="cate_text" 来指定显示组合出来的信息字段.

同时 cate_text 本身是不存在于实体数据表中的, seletepage默认去排序和搜索 cate_text 会报错,所以加上 data-order-by="id desc" data-search-field="zh_name,en_name,short_name" 来避开报错, 并支持对 zh_name,en_name,short_name 这几个字段的关键词筛选.

标签: none

评论已关闭