CakePHP3组件和模型具有相同的名称
因为我的组件、控制器和模型具有相同的名称:CakePHP3组件和模型具有相同的名称,cakephp,Cakephp,因为我的组件、控制器和模型具有相同的名称: <?php namespace Plug\Controller; use Plug\Controller\AppController; class SettingController extends AppController { public function initialize(){ parent::initialize(); $this->loadModel('Setting');
<?php
namespace Plug\Controller;
use Plug\Controller\AppController;
class SettingController extends AppController
{
public function initialize(){
parent::initialize();
$this->loadModel('Setting');
$this->loadComponent('Plug.Setting');
}
几乎所有的东西都在那里。请考虑检查文档,这是可以阅读的。< /P>
别名组件
要使用的一个常见设置是className选项,它允许您为组件添加别名。当您想用自定义实现替换$This->Auth或其他通用组件引用时,此功能非常有用:
// 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
}