我想在我的一个CakePHP项目中创建一个“管理面板/界面”。你知道它在现代网站中很常见。起初,我计划为此创建一个插件,并试图做到这一点。它没有工作,不知道为什么,我会在稍后寻求帮助。但是,接下来我看到CakePHP已经使用“Scafolding”提供了此功能。我现在正在尝试这个,但不知道为什么它没有按照我的预期工作。下面是我做的:CakePHP项目中的管理面板/界面
app/config/core.php :
---------------------
.
.
.
Configure::write('Routing.prefixes',array('admin'));
.
.
.
app/Controller/AppController.php :
----------------------------------
.
.
.
public $components=array(
'Session',
'Auth'=>array(
'loginRedirect'=>array('admin'=>true,'controller'=>'home','action'=>'index'),
'logoutRedirect'=>array('controller'=>'home','action'=>'index'),
'authorize'=>array('Controller')
)
);
.
.
.
我想,应该有管理面板,一个单独的控制器,这就是为什么我创造了它:
app/Controller/AdminsController.php :
-------------------------------------
<?php
App::uses('AppController','Controller');
class AdminsController extends AppController{
public $name='Admins';
public $scaffold='admin';
}
但没有奏效。所以,我认为CakePHP为所有单独的控制器提供了这个功能;我的意思是,我认为我应该为所有单独的控制器设置管理员面板,而不是作为不同的模块/控制器/子系统。所以,我改变我现有的控制器“Controllers1”的小家伙:
<?php
App::uses('AppController','Controller');
class Controllers1Controller extends AppController{
public $name='Controllers1';
public $scaffold='admin';
}
然后试图去这个网址:my_site/admin/jobs/view
但还是同样的结果。
请给我一个建议,我该怎么办?我应该为“管理面板”创建一个新的插件,还是Scafolding更好?我的错是什么?
感谢
明白了。非常感谢。我认为它现在会起作用。但是,应该创建这样的“管理面板”,或者我应该创建一个不同的插件?@vicocamcho – user2387319
它取决于你。您可以将它放在主应用程序上,或者将其制作为插件,以便稍后可以在其他项目中使用它。 – vicocamacho
谢谢。 @vicocamacho – user2387319