corethink功能模块探索开发(三)让这个模块可见

时间:2021-03-03 22:15:49

感觉corethink把thinkphp的思想复用到淋漓尽致。

1.把opencmf.php文件配置好了后台该模块的菜单就能在安装后自动读取(分析好父子关系,否则页面死循环,apache资源占用率100%)

Equip/opencmf.php

<?php
// 模块信息配置
return array(
	  // 模块信息
	'info' => array(
		 'name'        => 'Equip',
        'title'       => '设备',
        'icon'        => 'fa fa-newspaper-o',
        'icon_color'  => '#9933FF',
        'description' => '设备模块',
        'developer'   => 'pangPython',
        'website'     => 'http://www.opencmf.cn',
        'version'     => '1.0.0',
        'dependences' => array(
            'Admin'   => '1.1.0',
            ),
		),

	 // 用户中心导航
    'user_nav' => array(

    	),

    // 模块配置
    'config' => array(

    	),

    // 后台菜单及权限节点配置
    'admin_menu' => array(

    	'1' => array(
    		'id' => '1',
    		'uid' => '0',
    		'title' => '设备',
    		'icon' => 'fa fa-newspaper-o',
    		),

        '2' => array(
            'pid' => '1',
            'title' => '设备管理',
            'icon' => 'fa fa-folder-open-o',
            ),

          '3' => array(
            'pid'   => '2',
            'title' => '设备配置',
            'icon'  => 'fa fa-wrench',
        ),

             '4' => array(
            'pid'   => '2',
            'title' => '设备类型',
            'icon'  => 'fa fa-th-large',
        ),
    
    	),

	);
2.让页面自动构建表格

在Equip目录下的Admin目录下建立IndexAdmin.class.php

这个文件继承AdminController,AdminController实现了登录权限检测,自动读取后台模块左侧导航栏,而AdminController继承了CommonController,CommonController实现了模板显示功能,CommonController继承了Controller

Equip/Admin/IndexAdmin.class.php

<?php
namespace Equip\Admin;
use Admin\Controller\AdminController;
use Common\Util\Think\Page;
class IndexAdmin extends AdminController{
	public function index(){
		     //使用Builder快速建立列表页面
            $builder = new \Common\Builder\ListBuilder();
            $builder->setMetaTitle('设备管理') //设置页面标题
                    ->addTableColumn('id', 'ID')
                    ->addTableColumn('create_time', '设备名称', 'time')
                    ->addTableColumn('sort', '排序', 'text')
                    ->addTableColumn('status', '状态', 'status')
                    ->addTableColumn('right_button', '操作', 'btn')
                    ->setExtraHtml('<div class="alert alert-success">请点击左侧的列表树进行操作</div>')
                    ->display();
	}
}
此时再安装模块,就能正常显示页面了

效果图logo已打码

corethink功能模块探索开发(三)让这个模块可见