编写 Engine

demo.php

engine文件是在设计专题时控制添加、修改专题, 相当于编写控制器的代理,不同的模块用不同的代理来控制,widgetEngine几乎可以用controller所有属性,如$this->view$this->template$this->json

class widgetEngine_demo extends widgetEngine
{
            /**
             * @param $widget array
             * @return string
             */

            public function _render($widget)
            {
                        ....
            }
 
            /**
             *
添加模块的 form 表单
             */

            public function _addView()
            {
                        $this->view->display('path/to/view.php');
            }
 
            /**
             *
添加一个widget到数据库
             *
             * @param $data array
             * @return int widgetid
             */

            public function _addPost($data)
            {
                        return $this->widget->insert($data);
            }
 
            /**
             *
编辑一个widget form 表单
             *
             * @param $widget array
             */

 
            public function _editView($widget)
            {
                        .....
                        $this->view->display('path/to/view.php');
            }
 
            /**
             *
编辑一个widget form 表单
             *
             * @param $widget array
             * @param $data array
             * @return bool
             */

            public function _editPost($widget, $data)
            {
                        return $this->widget->update($data, $widgetid);
            }
}

每个模块引擎必须实现以上接口



Copyright ©2009 - 2014 CmsTop.Com.All rights reserved.
思拓合众