如何在不使用命令行的情况下在Symfony2中手动创建控制器?

时间:2015-06-09 10:30:54

标签: symfony model-view-controller controllers

我无法通过命令行创建控制器。有谁知道如何为我的Symfony2项目手动创建控制器?

我需要更新哪些文件?

1 个答案:

答案 0 :(得分:3)

您应该在YourControllerNameController.php文件夹中创建文件src/YourBundle/Controller。并将名为YourControllerNameController的类放入此文件中。另外请确保您根据PSR-0编写了正确的命名空间。

如果您将控制器创建为服务,则可以将其定义为服务并且没有问题。

如果您想创建未在服务容器中注册的标准控制器,您可以从Symfony\Bundle\FrameworkBundle\Controller\Controller扩展您的课程

在这两种情况下,您还需要为您的操作定义路线。最简单的方法是使用注释类型定义一个路由。它将根据与操作相关的注释自动生成路径:

your_route_name:
    resource: "@YourBundle/Controller"
    type:     annotation

它将扫描您的src/YourBundle/Controller文件夹,并为任何具有注释@Route的文件中的任何类中的任何方法生成新路径:

/**
 * @Route("/your/path", name="you_can_specify_name_here_but_it_is_optional")
 */
public function yourAction()
{
    // Your code here
}