如何在symfony2中更改路由模式

时间:2014-06-20 14:29:17

标签: php symfony

在我的一个symfony2包中,我有以下名为registration.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="fos_user_registration_register" pattern="">
        <default key="_controller">FOSUserBundle:Registration:register</default>
    </route>

</routes>

这是我当前的routing.yml:

fos_user_register:
    resource: "@FOSUserBundle/Resources/config/routing/registration.xml"
    prefix: /register

这里的问题是,当我尝试打印我看到的路线时:

fos_user_registration_register                          ANY         ANY    ANY  /register/

如何删除/ register /末尾的尾部斜杠?所以我希望它只是/ register

1 个答案:

答案 0 :(得分:1)

我不习惯使用XML进行路由,但是我们不必使用path=代替pattern=吗?如果这不能解决,你可以试试这个:

YML

  fos_user_register:
        resource: "@FOSUserBundle/Resources/config/routing/registration.xml"
        prefix: /

XML     

<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="fos_user_registration_register" path="register">
        <default key="_controller">FOSUserBundle:Registration:register</default>
    </route>

</routes>

或者path="/register"代替path="register"

无论如何,如果可以,你应该在任何地方使用相同的格式。