<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                插件的控制放在插件目錄下的`controller`文件夾下,控制器命名規范請參考ThinkPHP5.0文檔。 如果插件有后臺管理功能,除了可以在插件入口文件定義管理界面的字段信息,然后由系統生成管理界面外,也可以自己創建頁面。 但必須寫在`Admin`控制器的`index`方法內。 ~~~ plugins [所有插件目錄] ├─HelloWorld [插件目錄,插件名為首字母大寫的駝峰式] │ ├─controller [插件控制器目錄] │ │ Admin.php [插件控制器,自定義后臺管理都在這里,可以建立其他控制器] ~~~ 在`Admin.php`的代碼如下: ~~~ namespace plugins\HelloWorld\controller; use app\common\builder\ZBuilder; use app\common\controller\Common; /** * 插件后臺管理控制器 * @package plugins\HelloWorld\controller */ class Admin extends Common { /** * 插件管理頁 * @return mixed */ public function index() { // 用TableBuilder渲染模板 return ZBuilder::make('table') ->setPageTitle('數據列表') ->setSearch(['id' => 'ID', 'said' => '名言', 'name' => '出處']) ->addColumns([ ['id', 'ID'], ['said', '名言', 'text.edit'], ['name', '出處'], ['status', '狀態', 'switch'], ['right_button', '操作', 'btn'] ]) ->setTableName('plugin_hello') ->fetch(); } } ~~~ 只要在`Admin`控制器內有`index`方法,那么點擊插件管理按鈕,系統會優先執行該方法,而不會自動創建管理頁面。 在自定義的管理界面添加按鈕,按鈕的鏈接可以使用`plugin_url`方法來調用插件控制器內的方法,比如: ~~~ $btnOne = [ 'title' => '自定義按鈕1', 'icon' => 'fa fa-list', 'href' => plugin_url('HelloWorld/Admin/testTable'), 'target' => '_blank', ]; ~~~ 表示調用`HelloWorld`插件的`Admin`控制器的`testTable`方法。 ### 自定義模板 自定義模板有兩種方法,一種是使用ThinkPHP的fetch()方法,一種是只用系統的pluginView方法。 使用$this->fetch()需要指定模板文件的完整路徑,如: ~~~ return $this->fetch(config('plugin_path'). 'HelloWorld/view/index.html'); ~~~ 或者使用pluginView方法,默認加載插件view目錄下與當前方法名一致的模板文件。 ~~~ return $this->pluginView(); ~~~ 也可以指定模板名稱 ~~~ return $this->pluginView('index'); // 加載插件view目錄下的index.html模板文件 ~~~ 也可以指定模板后綴 ~~~ return $this->pluginView('index', 'tpl'); ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看