2010-10-08 119 views
1

我試圖爲我的控制器創建一個管理員帖子,我用蛋糕控制檯選項來創建控制器,我輸入Y問題「需要管理路由?」,我進入Y和我得到了寫我的控制器與管理功能,我的管理功能的一個看起來像這樣cakephp:admin路由問題:解析錯誤:語法錯誤,意外的'/',期待'('

function admin/controller_view($id = null) { 
    if (!$id) { 
     $this->Session->setFlash(__('Invalid post', true)); 
     $this->redirect(array('action' => 'index')); 
    } 
    $this->set('post', $this->Post->read(null, $id)); 
} 

但是,當我執行我收到以下錯誤

Parse error: syntax error, unexpected '/', expecting '(' in C:\xampp\htdocs\cake\blog\app\controllers\posts_controller.php on line 61

我正在使用cakephp 1.3,應該怎麼做才能爲此創建管理面板控制器?

Thaks很多

回答

3

斜槓/是不是在功能名稱,如admin/controller要使用的有效字符。這就是爲什麼錯誤在那裏。您應該刪除斜槓並按照CakePHP的函數命名約定重新命名該函數。

+0

感謝您的反饋,控制檯自動創建的「管理員/控制器」,這不是我的代碼,我想我必須改變cakephp中的一些配置,任何想法? – 2010-10-08 14:34:59

+0

@Thomas John:您可以閱讀CakePHP的文檔並相應地重命名該功能:) – Sarfraz 2010-10-08 14:36:37

-1

在你的路由文件config文件夾裏面,你可以使用類似這樣

Router::connect('/admin', array('controller' => 'admins', 'action' => 'index')); 

而且你的管理控制應該是這樣的

class AdminsController extends AppController 
{ 
    var $name = 'Admins'; 
    var $components = array('Email','Session','RequestHandler','Cookie'); 
    var $uses = array('Admins', 'Setting', 'Movie', 'User', 'Invitation', 'Purchase','Package'); 


    function admin_index() 
    { 
     $this->layout = 'admin_default'; 
    } 
} 

現在你可以打開你的管理:mysite的。 COM /管理/管理員。

定義函數時不必使用「/」。希望這有助於

+0

CakeController創建/符號在我的PostsController,我應該刪除這些? – 2010-10-08 15:15:03

+0

這與問題是什麼沒有關係 – dogmatic69 2010-10-08 16:13:36

0

你有什麼core.php中設置爲管理路由..好像你有「管理員/」它應該只是「管理員」

+0

謝謝,我修好了,現在我得到/ posts /但我不能管理員/職位? – 2010-10-08 16:22:33

+0

你應該更新你的代碼示例根據你有什麼,所以我們可以知道發生了什麼 – dogmatic69 2010-10-11 05:27:06

0

基於蛋糕路由自己創建管理員,如果您試圖通過訪問mysite.com/admin/posts訪問管理路由,那麼該函數應該顯示爲admin_view(),而不是admin/controller_view()。不幸的是,我不知道會導致這種情況,但糾正這種情況應該允許您通過訪問mysite.com/admin/posts/view訪問管理面板。如果這不起作用,你可以發佈你的routes.php的內容嗎?

0

托馬斯,你可能誤解了蛋糕文檔中的某些東西。以下是它的工作方式:

如果您要求/posts/view蛋糕找PostsController::view()

如果您啓用了管理路由(即「prefix routing」),並要求/admin/posts/view,那麼蛋糕將查找PostsController::admin_view()

注意它是在同一個控制器

當然,您還需要一個額外的查看文件admin_view.ctp

起初可能有點混亂,但不用擔心,你會到達那裏! ;)

相關問題