天天看點

關于yii2的小tips

1.在advanced版本下,通過

frontend/config/main.php

中添加’urlManager’,來改變路由規則—直接在URL位址中輸入域名/控制器/方法

2.advanced版本的配置項大多位于 項目

/commom/config/main-local.php

3.在做使用者郵箱注冊登入驗證時,可以使用outlook郵箱的SMTP:smtp.live.com 端口:587 傳輸方式:tsl 我自己試過163,souhu,qq的smtp都不太順利

4.在MySQL建立資料表時,如果某個字段類型為blog/text時,又正好設定了預設值,mysql會報錯:該類型不能有預設值,這是因為MySQL啟用了嚴格模式.這時需要注釋掉my.ini中的strict_trans_tables,以及my-template.ini中的:

然後重新開機MySQL服務

5.在yii2 advanced版安裝dektrium user的時候,如果使用指令

composerrequire"dektrium/yii2-user:0.9.*@dev"

報錯,可以将其修改為

composerglobalrequire"dektrium/yii2-user:[email protected]

“再執行(目前最新的是0.9.6)

6.Gii生成代碼時出現 未定義變量的錯誤頁面,可能是生成時 controller位置寫錯

7.配置語言出錯,可能是這的原因: 例如簡體中文是 zh-CN 而不是zh_CN 是中橫線不是下劃線

8.批量更新,比如更新id=1,2,3….時,應該寫為

yourModel::updateAll(['修改的字段'=>'修改的值',['in','id',[,,]]]);
           

9.批量更新,給某字段值加減時用updateAllCounters

例如:

YourModel::updateAllCounters(
    ['字段A' => +/- 值,
    ['條件字段A' => 條件A, '條件字段B' => 條件B]
);
           

10.開發機系統從win7換成win10後,運作項目的時間突然變成一千多ms,發現是connection時間過長,

解決方法:

将資料庫配置中的host由locahost改為127.0.0.1即可,運作速度恢複正常

繼續閱讀