## 作用
使用通用数据列表视图的时候,可以通过setListSearch设置数据的搜索条件,实现列表页数据搜索功能。例如下面的在消息管理列表页,通过`setListSearch(array( 'msgtype' => '消息类型', 'content' => '消息内容' )`设置通过消息类型和消息内容进行消息的搜索。msgtype和content均为mp_message数据表里的字段。
## 示例
![](https://box.kancloud.cn/a9300885783ee5f7e50a49d9e8c85786_1230x744.png)
## 视图类实现
```
/**
* 消息列表
* @author 艾逗笔<765532665@qq.com>
*/
public function lists() {
$custom = array(
'options' => array(
'save_to_material' => array(
'title' => '保存为素材',
'url' => U('save_to_material', array('msgid'=>'{msgid}')),
'class' => 'btn btn-sm btn-primary icon-signup'
),
'reply_message' => array(
'title' => '回复消息',
'url' => U('reply_message', array('msgid'=>'{msgid}')),
'class' => 'btn btn-sm btn-info icon-topic'
)
)
);
$this->addCrumb('公众号管理', U('Mp/Index/index'), '')
->addCrumb('消息管理', U('Mp/Message/lists'), '')
->addCrumb('消息列表', '', 'active')
->addNav('消息列表', '', 'active')
->setModel('mp_message')
->setListMap(array('mpid'=>get_mpid()))
->setListOrder('create_time desc')
->setListSearch(array(
'msgtype' => '消息类型',
'content' => '消息内容'
))
->addListItem('msgtype', '消息类型', 'enum', array('options'=>array('text'=>'文本消息','image'=>'图片消息','voice'=>'语音消息','shortvideo'=>'短视频消息','location'=>'地理位置消息','link'=>'链接消息')))
->addListItem('msgid', '消息内容', 'callback', array('callback_name'=>'get_message_content'))
->addListItem('create_time', '消息发送时间', 'function', array('function_name'=>'date','params'=>'Y-m-d H:i:s,###'))
->addListItem('openid', '粉丝头像', 'function', array('function_name'=>'get_fans_headimg'))
->addListItem('openid', '粉丝昵称', 'function', array('function_name'=>'get_fans_nickname'))
->addListItem('msgid', '操作', 'custom', $custom)
->common_lists();
}
```
## 模型实现
```
$model['list_search'] = array('msgtype' => '消息类型','content' => '消息内容' );
```
>[warning] list_search对应的搜索条件数组键值对中的键必须是模型对象(数据表)中存在的字段,值为搜索框中显示的搜索条件名称。
- 更新日志
- 入门
- 关于豆信
- 系统安装
- 功能介绍
- 公众号对接
- 小程序对接
- 系统架构
- 数据字典
- 框架目录结构
- 插件目录结构
- 运行流程
- 插件开发
- 新建插件
- info.php
- 设计数据表
- 插件控制器
- 后台管理控制器
- 移动端控制器
- 交互响应控制器
- 接口管理控制器
- 插件模型
- 插件视图
- 发布插件
- 自定义模型
- 通用增删改查
- common_lists
- common_add
- common_edit
- common_delete
- setMetaTitle
- setSubmitType
- setModel
- setListMap
- setListSearch
- setListOrder
- setListPer
- setEditMap
- setDeleteMap
- setFindMap
- addCrumb
- addNav
- addButton
- setTip
- 函数手册
- get_addon
- get_addon_settings
- tomedia
- get_fans_info
- 小程序开发专题
- 小程序对接插件.js
- 获取插件配置
- 获取用户信息
- 更新用户资料
- 公众号开发专题
- 获取粉丝信息
- 自定义分享
- 消息上下文
- 微信支付
- 企业付款
- 发送现金红包
- 发送模板消息
- 发送客服消息
- 引入前端资源
- 限制页面仅在微信浏览器访问
- 在插件页面中引入样式文件
- 在插件中创建跳转链接
- 数据预处理
- 插件开发实例
- 聊天机器人
- 留言板
- 常见问题解答