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

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                通常每個模型類是操作某個數據表,在大多數情況下,系統會自動獲取當前數據表的字段信息。 系統會在模型首次實例化的時候自動獲取數據表的字段信息(而且只需要一次,以后會永久緩存字段信息,除非設置不緩存或者刪除),如果是調試模式則不會生成字段緩存文件,則表示每次都會重新獲取數據表字段信息。 字段緩存保存在`Runtime/Data/_fields/` 目錄下面,緩存機制是每個模型對應一個字段緩存文件(注意:并非每個數據表對應一個字段緩存文件),命名格式是: ##### 數據庫名.數據表前綴+模型名(小寫).php 例如: ~~~ demo.think_user.php // User模型生成的字段緩存文件 demo.top_article.php // Article模型生成的字段緩存文件 ~~~ 字段緩存包括數據表的字段信息、主鍵字段和是否自動增長,如果開啟字段類型驗證的話還包括字段類型信息等等,無論是用M方法還是D方法,或者用原生的實例化模型類一般情況下只要是不開啟調試模式都會生成字段緩存(字段緩存可以單獨設置關閉)。 可以通過設置`DB_FIELDS_CACHE` 參數來關閉字段自動緩存,如果在開發的時候經常變動數據庫的結構,而不希望進行數據表的字段緩存,可以在項目配置文件中增加如下配置: ~~~ // 關閉字段緩存 'DB_FIELDS_CACHE'=>false ~~~ > 注意:調試模式下面由于考慮到數據結構可能會經常變動,所以默認是關閉字段緩存的。 如果需要顯式獲取當前數據表的字段信息,可以使用模型類的getDbFields方法來獲取當前數據對象的全部字段信息,例如: ~~~ $User = M('User'); $fields = $User->getDbFields(); ~~~ 如果你在部署模式下面修改了數據表的字段信息,可能需要清空`Data/_fields`目錄下面的緩存文件,讓系統重新獲取更新的數據表字段信息,否則會發生新增的字段無法寫入數據庫的問題。 如果不希望依賴字段緩存或者想提高性能,也可以在模型類里面手動定義數據表字段的名稱,可以避免IO加載的效率開銷,例如: ~~~ namespace Home\Model; use Think\Model; class UserModel extends Model { protected $fields = array('id', 'username', 'email', 'age'); protected $pk = 'id'; } ~~~ `pk`屬性定義當前數據表的主鍵名,默認值就是id,因此如果是id的話可以無需定義。 如果你的數據表使用了復合主鍵,可以這樣定義: ~~~ namespace Home\Model; use Think\Model; class ScoreModel extends Model { protected $fields = array('user_id', 'lession_id','score'); protected $pk = array('user_id','lession_id'); } ~~~ 除了可以設置數據表的字段之外,我們還可以定義字段的類型,用于某些驗證環節。例如: ~~~ namespace Home\Model; use Think\Model; class UserModel extends Model { protected $fields = array('id', 'username', 'email', 'age', '_type'=>array('id'=>'bigint','username'=>'varchar','email'=>'varchar','age'=>'int') ); } ~~~
                  <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>

                              哎呀哎呀视频在线观看