2016-12-02 127 views
2

,因为我的组件,控制器和模型具有相同的名称:CakePHP的3组件和模型具有相同的名称

<?php 
namespace Plug\Controller; 

use Plug\Controller\AppController; 

class SettingController extends AppController 
{ 

    public function initialize(){ 
     parent::initialize(); 
     $this->loadModel('Setting'); 
     $this->loadComponent('Plug.Setting'); 

    } 

我怎么知道如何引用组件或模型?

回答

1

Check the manual,几乎所有东西都在那里。请考虑检查文档,在那里阅读。

混淆成份

一个常见的设置使用的是类名选项,它可以让你的别名组件。当你想更换$这个 - 这个功能非常有用>验证或自定义实现另一种常见的成分参考:

// src/Controller/PostsController.php 
class PostsController extends AppController 
{ 
    public function initialize() 
    { 
     $this->loadComponent('Auth', [ 
      'className' => 'MyAuth' 
     ]); 
    } 
} 

// src/Controller/Component/MyAuthComponent.php 
use Cake\Controller\Component\AuthComponent; 

class MyAuthComponent extends AuthComponent 
{ 
    // Add your code to override the core AuthComponent 
} 
相关问题