ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
## 后台管理控制器 插件创建成功后会自动生成插件目录,插件控制器中会自动生成一个`WebController.class.php`,在此文件中可以进行插件的后台功能的开发。 插件的响应规则、配置参数、封面入口都可以直接在info.php中通过配置来实现,WebController主要用来处理业务导航配置的各项功能。 例如留言板插件,首先在info.php中配置一个管理留言的业务导航,并把插件的默认入口设置为留言管理页面: ~~~ 'config' => array( 'index_url' => U('/IdouGuestbook/web/messages'), 'menu' => 1, 'menu_list' => array( 'messages' => '留言管理' ), ), ~~~ 然后在后台管理控制器中对留言数据进行增删改查: ~~~ <?php namespace Addons\IdouGuestbook\Controller; use Mp\Controller\AddonsController; /** * 留言板后台控制器 * @author 艾逗笔<765532665@qq.com> */ class WebController extends AddonsController { /** * 留言管理 * @author 艾逗笔<765532665@qq.com> */ public function messages() { $model = get_addon_model('idou_guestbook_list'); $this->setModel($model) ->common_lists(); } /** * 通用删除数据方法 * @author 艾逗笔<765532665@qq.com> */ public function delete() { $this->setModel('idou_guestbook_list') ->setDeleteMap(array('id'=>I('id'),'mpid'=>get_mpid())) ->setDeleteSuccessUrl(create_addon_url('messages')) ->common_delete(); } /** * 编辑留言 * @author 艾逗笔<765532665@qq.com> */ public function edit() { $this->addSubNav('编辑留言', '', 'active') ->setModel('idou_guestbook_list') ->addFormField('nickname', '留言者昵称', 'text') ->addFormField('content', '留言内容', 'textarea') ->addFormField('create_time', '留言时间', 'text') ->addFormField('status', '留言状态', 'radio', array('options'=>array(0=>'未审核',1=>'审核通过',2=>'审核不通过'))) ->setFindMap(array('mpid'=>get_mpid(),'id'=>I('get.id'))) ->setEditMap(array('mpid'=>get_mpid(),'id'=>I('get.id'))) ->setEditSuccessUrl(create_addon_url('messages')) ->common_edit(); } } ?> ~~~ 后台管理控制器WebController中通过调用视图工具来对数据进行增删改查,用最少的代码实现最多的功能。