Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Web services 控制器还是管理器作为服务?_Web Services_Symfony_Architecture - Fatal编程技术网

Web services 控制器还是管理器作为服务?

Web services 控制器还是管理器作为服务?,web-services,symfony,architecture,Web Services,Symfony,Architecture,Symfony提出这个问题是出于我的动机,但很明显,这涵盖了整个软件工程领域,因此它与语言无关 我曾尝试将控制器创建为服务,以便在另一个控制器中使用它,但基于实体的管理器创建服务可能是更好的做法?为什么不直接创建服务?如果您的控制器作为服务的角色,我不理解将控制器作为服务使用的意义?这对我来说没有意义,但也许我误解了你的问题 您有不同的解决方案: 首先,您必须了解,您的实体管理器可以在应用程序中的任何地方作为服务使用。您可以在控制器中这样使用它,例如:$em=$this->container->

Symfony提出这个问题是出于我的动机,但很明显,这涵盖了整个软件工程领域,因此它与语言无关


我曾尝试将控制器创建为服务,以便在另一个控制器中使用它,但基于实体的管理器创建服务可能是更好的做法?

为什么不直接创建服务?如果您的控制器作为服务的角色,我不理解将控制器作为服务使用的意义?这对我来说没有意义,但也许我误解了你的问题

您有不同的解决方案:

首先,您必须了解,您的实体管理器可以在应用程序中的任何地方作为服务使用。您可以在控制器中这样使用它,例如:$em=$this->container->get'doctrine.orm.entity_manager'

如果要将请求从一个控制器重定向到另一个控制器,可以使用forward方法:


这里有一个可能对您有所帮助的链接:

Symfony 2支持子请求的概念,这使得无论控制器是否定义为服务,都可以轻松地将控制器嵌入另一个控制器中。你的问题不是很清楚。您很可能希望共享一个经理而不是控制器。