我想在我的一個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