【问题标题】:Symfony2 routing.yml setting routing_frontend.yml and routing_backend.yml in same directorySymfony2 routing.yml 在同一目录中设置 routing_frontend.yml 和 routing_backend.yml
【发布时间】:2014-12-15 11:00:30
【问题描述】:

我正在尝试学习 symfony2,但是路由让我感到困惑

我已经成功地生成了 bundle 和带有 action 的控制器

我想在同一个地方管理我的所有路由,而不是将每个路由模式放在每个 *bundle/resource/config/routing.yml 中

所以我这样设置我的 app/config/routing.yml

routing.yml

backend:
    resource: routing_backend.yml
    prefix: /admin

frontend:
    resource: routing_frontend.yml
    prefix: /

然后在我浏览 localhost/ 时没问题,但在 localhost/admin 出现错误

No route found for "GET /admin"

但是当我像这样重新排序 routing.yml 配置时

routing.yml

frontend:
    resource: routing_frontend.yml
    prefix: /

backend:
    resource: routing_backend.yml
    prefix: /admin

然后当我浏览 localhost/admin 但在 localhost/ 出错时就可以了

No route found for "GET /"

routing_frontend.yml

index:
    path: /
    defaults: { _controller: vRonnPageBundle:Page:index }

routing_backend.yml

index:
    path: /
    defaults: { _controller: vRonnAdminPageBundle:Page:index }

【问题讨论】:

  • 试试/admin/(末尾有一个斜线)网址。

标签: php symfony symfony-2.6


【解决方案1】:

在我用命令php app/console router:debug检查所有可用路由后我终于知道了,并且只有一个路由名称index,路由名称必须是唯一的或将被替换

routing_frontend.yml

frontend_index:
    path: /
    defaults: { _controller: vRonnPageBundle:Page:index }

routing_backend.yml

backend_index:
    path: /
    defaults: { _controller: vRonnAdminPageBundle:Page:index }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-19
    • 2014-09-16
    • 2014-05-22
    • 1970-01-01
    • 2012-03-13
    相关资源
    最近更新 更多