找到Symfony路线但不匹配

时间:2016-07-22 14:08:32

标签: php routing symfony

今天我的Symfony应用程序出现了一个神秘的问题。

我创建了一条与另一条路径冲突的新路线。我改变了订单,但问题仍然存在。

我的路线是:

# imported and prefixed routing.yml file
my_new_route:
    path: /activation-token/{activation-token}
    defaults: { _controller: MyUserBundle:User:getLicenseeIdByActivationToken }
    methods: [GET]

当我启动bin/console debug:router命令时,我的路线已注册:

$ bin/console debug:router --show-controllers | grep my_new_route

my_new_route                      GET           ANY      ANY    /api/v1/users/activation-token/{activation-token}                                                                                                   FfbEasiUserBundle:Users:getLicenseeIdByActivationToken 

我删除了冲突的路由,只是为了测试,并尝试使用bin/console router:match命令来检查我的路由的匹配。我有以下输出:

$ bin/console router:match --method GET /api/v1/users/activation-token/a

[ERROR] None of the routes match the path "/api/v1/users/activation-token/{application-token}"  

我承认我不了解当前配置中的错误。

如果有人有线索,请分享:D!

编辑:我清除了缓存;)

1 个答案:

答案 0 :(得分:1)

只需将您的参数更改为简单的camelCase。 symfony路由器不喜欢带连字符的路由参数;)