根据文件:
除了使用逻辑名称或完全限定类 名称,Symfony支持第三种引用控制器的方式。这个 方法只使用一个冒号分隔符(例如service_name:indexAction) 并将控制器称为服务(请参阅如何定义 控制器作为服务)。
将此控制器作为服务(标识为gremo_skebby.controller.report
):
<container xmlns="http://symfony.com/schema/dic/services"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://symfony.com/schema/dic/services
http://symfony.com/schema/dic/services/services-1.0.xsd">
<parameters>
<parameter key="gremo_skebby.controller.report.class">
Gremo\SkebbyBundle\Controller\ReportController
</parameter>
<parameter key="gremo_skebby.request.param_converter.report_event.class">
Gremo\SkebbyBundle\Request\ParamConverter\ReportEventParamConverter
</parameter>
</parameters>
<services>
<service id="gremo_skebby.request.param_converter.report_event"
class="%gremo_skebby.request.param_converter.report_event.class%">
<tag name="request.param_coverter" />
</service>
<service id="gremo_skebby.controller.report"
class="%gremo_skebby.controller.report.class%">
<argument id="dispatcher" type="service" />
</service>
</services>
</container>
如何在/skebby/notify
文件中定义路由routing.xml
?
<?xml version="1.0" encoding="UTF-8" ?>
<routes xmlns="http://symfony.com/schema/routing"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://symfony.com/schema/routing
http://symfony.com/schema/routing/routing-1.0.xsd">
<route id="gremo_skebby_report_notify" pattern="/skebby/notify">
<default key="_controller">???</default>
<requirement key="_method">GET</requirement>
</route>
</routes>
答案 0 :(得分:0)
如果调用操作方法notifyAction
,则gremo_skebby.controller.report:notifyAction
。