<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>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # 模型開發指南 這里主要講在業務開發中CURD的處理. ## 獲取器 Attr 使用場景:額外需要的字段或者列表需要進一步處理 具體文檔請看[獲取器](http://www.hmoore.net/manual/thinkphp5/135192) ``` // 1 如果一個字段數據庫不存在則使用獲取器,比如小打卡創建了多少天 public function getDurationAttr($value,$data){ // $data 是實例數據 return $time - $data['create_time']; } // 該字段需要寫入attr文檔中 // 2 如果一個字段數據庫存在,但是不能直接使用,比如要給手機號碼前加86 public function getTelAttr($value,$data){ // $data 是實例數據 return "+86 ".$value; } // 該字段無需加入文檔 ``` ## 關聯 With 使用場景:有實質性關聯關系 ``` // 無論是何關聯關系,都需要在模型中定義 // 一對一 略 // 一對多 public function Sign(){ return $this->hasMany('Sign'); } // 多對多 public function Fav(){ return $this->belongsToMany('User','xdk_plan_fav'); // attach detach } // 關聯的函數都可以使用with在前端使用 ``` ## 驗證器 ``` // 模擬注冊時的數據驗證 public function register(){ $data = request()->only(['username']); $validate = new \app\xdk\validate\User(); $result = $validate->scene('register')->check($data); if(!$result){ return json(['error'=>$validate->getError()],422); } $result =$this->create($data); return json($result); } ``` ## 函數 ``` // 模型中的所有public屬性的函數都可以在前端執行,因此需要做安全工作 // 可訪問 public function rank(){ } // 不可訪問 protected function rank(){ } ```
                  <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>

                              哎呀哎呀视频在线观看