在CakePHP 2.5中,我有这些控制器:
- CommonsController extends AppController { ... }
- MyController extends CommonsController { ... }
- GoodController extends CommonsController { ... }
我有这个型号:
- Work1 extends AppModel { ... }
- Work2 extends AppModel { ... }
- Work3 extends AppModel { ... }
在我的CommonsController中,我有45种使用Work1,Work2,Work3模型的方法。
- CommonsController::method1() { // using Work1 model }
- CommonsController::method2() { // using Work1 model }
....
- CommonsController::method16() { // using Work2 model }
- CommonsController::method17() { // using Work2 model }
....
- CommonsController::method44() { // using Work3 model }
- CommonsController::method45() { // using Work3 model }
使用这种结构内部控制器我可以调用这样的模型:
// inside CommonsController
$this->method18();
$this->method26();
// inside MyController
$this->method18();
$this->method42();
// inside GoodController
$this->method18();
$this->method36();
在CakePHP中,对于常见的控制器功能,我使用了Components。是否有在控制器中使用通用模型的结构?