我正在开发一个需要一些额外功能的旧项目。它使用symfony 1.4。我是symfony的新手。
现在有4个动作:
executeAdmin,executeDashboard,executeHome,executeView,运行良好。它们位于名为action.class.php的文件中。
路由看起来像这样(在routing.yml中):
editor:
url: /editor/:action/*
param: { module: bookeditor }
我的假设是在同一个action.class.php中创建一个新的executeTest可以开箱即用。
private function executeUpload ( $request ) {
$this->response->setContent("<h1>Ok!</h1>");
return sfView::NONE;
}
当进入mysite / editor / upload时,我得到了404页面。
如果我替换executeAdmin的代码,例如:
private function executAdmin ( $request ) {
$this->response->setContent("<h1>Ok!</h1>");
return sfView::NONE;
}
当去mysite / editor / admin时,我在空白页面上得到“Ok”。
为什么会这样?我该如何解决这个问题?
(我清除了symfony缓存并在每次更改后重新启动了apache。)
答案 0 :(得分:3)
execute*
函数必须为public
。
此处您还有一个拼写错误:executAdmin
。它应该是executeAdmin
。