【问题标题】:Symfony2 generate controller inside custom folderSymfony2 在自定义文件夹中生成控制器
【发布时间】:2014-11-18 20:47:27
【问题描述】:

Symfony2 有一个生成控制器的命令

http://symfony.com/doc/current/bundles/SensioGeneratorBundle/commands/generate_controller.html

命令的默认行为是在包内的controller 文件夹中生成给定的控制器。

是否可以自定义生成控制器的文件夹(例如controller/backend)?

【问题讨论】:

  • 你最好为前端和后端分别打包。
  • 我不认为你可以在命令中添加子文件夹。此外,我认为这不是在YourBundle\Controller 中添加子目录的好方法。顺便说一句,您是否想创建您自己的 generate:controller。看看How to create a basic command
  • @moonwave99 你能解释一下为什么最好把它们分开吗?
  • @zizoujab 因为它们有不同的用途,可以单独[重新]使用。当然是口味问题^^

标签: php symfony command-line


【解决方案1】:

你可以试试:“php bin/console make:controller Directory\\ControllerName”

【讨论】:

  • 在 symfony 5.1 php 7.4 中工作
【解决方案2】:

您可以使用帮助命令获取此命令的所有可用选项:

php app/console help generate:controller

不,您不能使用当前任务,但您可以扩展 GenerateControllerCommand 以添加自定义选项。查看它的generate 函数:

// GenerateControllerCommand.php
public function generate(BundleInterface $bundle, $controller, $routeFormat, $templateFormat, array $actions = array())
{
    ...
    $controllerFile = $dir.'/Controller/'.$controller.'Controller.php';
    ...
    $this->renderFile('controller/Controller.php.twig', $controllerFile, $parameters);
    ...
}

【讨论】:

  • 那不会回答问题... OP提供的链接已经列出了选项。
  • @Debflav 添加了详细信息。
  • 我会尝试添加它并报告回来
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-03-31
  • 2014-08-20
  • 2013-10-19
  • 1970-01-01
  • 2021-07-29
相关资源
最近更新 更多