Php 是否有办法为symfony 1.4模块配备多个控制器?
在Symfony 1.4中有一个基本控制器(一个base actions.php文件)。我想为同一模块创建另一个控制器,扩展该基本控制器 我需要扩展这个基本控制器,因为我想自定义某些访问者的行为,这些访问者是根据URL中的ID识别的Php 是否有办法为symfony 1.4模块配备多个控制器?,php,symfony-1.4,Php,Symfony 1.4,在Symfony 1.4中有一个基本控制器(一个base actions.php文件)。我想为同一模块创建另一个控制器,扩展该基本控制器 我需要扩展这个基本控制器,因为我想自定义某些访问者的行为,这些访问者是根据URL中的ID识别的 有什么提示吗?同一模块的另一个控制器类,我认为这在symfony中是不可能的 我想最简单的解决方案是在同一个类中创建另一个方法,然后从基方法调用它 举例:actions.class.php: public function executeBaseAction(sfW
有什么提示吗?同一模块的另一个控制器类,我认为这在symfony中是不可能的 我想最简单的解决方案是在同一个类中创建另一个方法,然后从基方法调用它 举例:actions.class.php:
public function executeBaseAction(sfWebRequest $request) {
.. if($user....) then return $this->executeCustomAction($request);
}
public function executeCustomAction(sfWebRequest $request) {
// $this->setTemplate('anotherTemplate?');
}
实际上,您可以为同一模块添加另一个控制器类 您可以通过以下方式在操作目录中包含多个文件: 在action1Action.class.php中
class action1Action extends sfAction
{
public function execute($request) {
//Your code here
}
}
class action2Action extends sfAction
{
public function execute($request) {
//Your code here
}
}
这将使用模板action1Success.php
在action2Action.class.php中
class action1Action extends sfAction
{
public function execute($request) {
//Your code here
}
}
class action2Action extends sfAction
{
public function execute($request) {
//Your code here
}
}
这将使用模板action2Success.php,这就是我现在正在做的。我希望有一个更优雅的解决方案,继承或类似的东西。。。无论如何谢谢你!没有。Symfony在actions文件夹中搜索actions.class.php文件。并且该类名应该与“module\u folder\u name”操作匹配。