CakePHP 2.x => 3.x 升級手順
一、Controller層
1.find('list')
原2.x中該方法透過指定option中的'fields'來實現key=>value
3.x透過與option」中的'fvalueFieldield值需要用toArray()進行轉換
2.find('first')、find('count')
3.x中已經完全廢棄掉這兩個參數,而使用find()->first()以及find()->count()進行替換
3.find查詢關聯表時,必須新增'contain'屬性,Cake 3.x 預設不會將表格關聯在一起
4.findById
**?沒有找到相關文檔?**
2.x中findById格式為($id,array $fields)〜 、〜 y) $fields)方法來篩選資料
2.x透過initialize(Controller $Controller)取得呼叫該Component的Controller
3. ->_registry->getController();取得
3.x廢棄掉了該Component而改用$this->request->session()替換
1.Associations
2.x透過定義屬性來實現關聯
3.x需要在Table中的initialize方法中呼叫$this-belongs、$this-belongs>等方法來實現
2.x透過定義validate屬性實作資料驗證
3.x需要在Table中定義validationDefault(Validator $validator)方法來實作
idationDefault(Validator $validator)方法來實作
idationDefault(Validator $validator)方法來實作
3.virtualFields
3.x中廢棄了這個屬性,如需使用,需要在Entity中追加方法
》 FullName()
然後將full_name 加到$_accessible中
4.field()
**?沒有找到相關文件?**
5.ClassRegistry::init()
6.Mysql別名設定
2.x只需要在fields屬性中加入as即可如'fields'=>array('id as table_id')
三、View層
(View層,從2.x的View資料夾搬遷到3.x的Template)
1.$this->Html->url
四、Bug
1. Associations
此升級手順會持續更新中~~~~~~
以上就介紹了CakePHP 2.x 升級3.0,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。
🎜