<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智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## **數據列表輸出** ThinkLibrary 與 ThinkPHP 組合起來就是現在的 ThinkAdmin v5,都是基于 Composer 來管理; 如果需要使用到 ThinkLibrary 里面的功能,控制器需要繼承 `\library\Controller` 類。 ### **數據列表操作** 在控制器訪問中只需加入`$this->page(表名)`可以顯示默認數據表的分頁列表。 如果需要對列表進行條件處理,可以使用查詢器來實現。如: ```php // 創建查詢器(查詢器支持鏈式操作) $query = $this->_query('表名')->where(['status'=>'1']); // 查詢器分頁輸出 $query->page(); ``` **注意**:在 ThinkPHP 5.1 之后,控制器不需要直接返回內容了,函數`_page`里面使用`HttpResponseException`直接輸出機制。 另外對于`url`輸入的變量也可以快速輸入到查詢器條件中,如: ```php // 創建查詢器 $query = $this->_query('表名'); // 切入url參數,接收 username 和 sex 并使用 like 查詢,接收 status 使用 eq 查詢 $query->like('username,sex')->equal('status'); // 查詢器分頁輸出 $query->page(); ``` 有時候,`url`輸入的名稱與數據字段不一定是匹配的,所以需要用到別名,這里就需要按規則寫條件,如: ```php // 切入url參數,接收 username_alias 和 sex 并使用 like 查詢,接收 user_status 使用 eq 查詢 // 這里用到了別名,username_alias 對應數據庫中的 username 字段,user_status 對應數據庫的 status 字段 $query = $this->_query('表名')->like('username#username_alias,sex')->equal('status#user_status'); // 查詢器分頁輸出 $query->page(); ``` 輸出額外數據到模板,與 ThinkPHP 操作無異,如: ```php // 額外列表數據賦值到模板,模板里直接使用變量 $userList $this->userList = Db::name('User')->where(['status'=>'1'])->select(); // 切入url參數,接收 username 和 sex 并使用 like 查詢,接收 status 使用 eq 查詢 $query = $this->_query('表名')->like('username,sex')->equal('status'); // 查詢器分頁輸出 $query->page(); ``` #### 數據回調處理 對于通過`page`方法實現的即將顯示到模板的列表,還可以進行引用二次處理,如: ```php protected function _page_filter(&$data){ // 這里可以對 $data 進行二次處理,注意是引用 } ### 當一個控制器存在多個page操作時,可以指定回調前綴 protected function _index_page_filter(&$data){ // 精準回調對 $data 進行二次處理,注意是引用 } ``` ----- 下面提供一個完整的DEMO ~~~ /** * 系統操作日志 * @auth true * @menu true * @throws \think\Exception * @throws \think\db\exception\DataNotFoundException * @throws \think\db\exception\ModelNotFoundException * @throws \think\exception\DbException */ public function index() { $this->title = '系統操作日志'; $query = $this->_query($this->table)->like('action,node,content,username,geoip'); $query->dateBetween('create_at')->order('id desc')->page(); } /** * 列表數據處理 * @param array $data * @throws \Exception */ protected function _index_page_filter(&$data) { $ip = new \Ip2Region(); foreach ($data as &$vo) { $result = $ip->btreeSearch($vo['geoip']); $vo['isp'] = isset($result['region']) ? $result['region'] : ''; $vo['isp'] = str_replace(['內網IP', '0', '|'], '', $vo['isp']); } } ~~~ 快捷查詢器同樣保留原 ThinkPHP Query 的功能,也可以使用關聯查詢。 ```php // 我們可以獲取到ThinkPHP默認Db操作對象 // 在這里對Db進行操作,如果 $db->where()->buildSql() 等等 $db = $this->_query('表名')->db(); // 對于聯表操作,需要指定 filed,join 如果用到了條件查詢,一定要用上別名查詢 $query = $this->_query('table_a')->alias('a')->field('a.id,a.name,b.pid,b.nickname'); $query->join('table_b b','a.id=b.pid')->like('a.name#a_name')->page(); ```
                  <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>

                              哎呀哎呀视频在线观看