selectpage组合显示多字段信息
假设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 这几个字段的关键词筛选.
评论已关闭