dqpkea9486 2014-08-26 02:14
浏览 28
已采纳

将“/ inicio”定义为主页或变通方法路由未命中配置

I have a site with some static pages and I have defined as follow in routing_pages.yml file:

index:
    pattern:  /inicio
    defaults: { template: 'FrontendBundle:Site:index.html.twig' }

contact_one:
    pattern:  /contact_one
    defaults: { template: 'FrontendBundle:Site:contact.html.twig' }

location:
    pattern:  /horario
    defaults: { template: 'FrontendBundle:Site:location.html.twig' }

payment:
    pattern:  /pagos
    defaults: { template: 'FrontendBundle:Site:payment.html.twig' }

question:
    pattern:  /preguntas
    defaults: { template: 'FrontendBundle:Site:question.html.twig' }

questionb:
    pattern:  /preguntasb
    defaults: { template: 'FrontendBundle:Site:questionb.html.twig' }

shipping:
    pattern:  /politicasenvio
    defaults: { template: 'FrontendBundle:Site:shipping.html.twig' }

warranties:
    pattern:  /garantias
    defaults: { template: 'FrontendBundle:Site:warranties.html.twig' }

ml:
    pattern:  /ml
    defaults: { template: 'FrontendBundle:Site:forms.html.twig' }

Then at main routing.yml file I use the resource as:

_paginas:
    resource: routing_pages.yml
    prefix:   /
    defaults:
        _controller: FrameworkBundle:Template:template

I'm having some issues trying to access /app_dev.php|app.php route with this exception:

No route found for "GET /"

This is due to the configuration I have on access_control at security.yml:

access_control:
    #Security Login/Register/Resetting
    - { path: ^/login$, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/register, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/resetting, role: IS_AUTHENTICATED_ANONYMOUSLY }
    #Frontend Pages Routes
    - { path: ^/inicio, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/contact_one, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/horario, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/pagos, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/preguntas, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/preguntasb, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/politicasenvio, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/garantias, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/ml, role: IS_AUTHENTICATED_ANONYMOUSLY }
    #Login required
    - { path: ^/, role: ROLE_USER }
    - { path: ^/admin/, role: ROLE_ADMIN }

What I did like that? Because the stactic pages doesn't need login features just admin area does. I tried play with this two lines by changing to this:

    - { path: ^/, role: IS_AUTHENTICATED_ANONYMOUSLY }
    - { path: ^/admin/, role: ROLE_ADMIN }

But then when I access `app_dev.php|app.php/admin I don't see the login form, why? How I fix that? Any advice?

If I could define /inicio as homepage in somewhere or somehow then the problem is fixed, tough, but I don't know how to.

  • 写回答

1条回答 默认 最新

  • doushang1880 2014-08-26 05:43
    关注

    You could just define a redirect from "/" to "/inicio" in the routing table:

    # redirecting the root
    root:
        path: /
        defaults:
            _controller: FrameworkBundle:Redirect:urlRedirect
            path: /inicio
            permanent: true
    

    src: http://symfony.com/doc/current/cookbook/routing/redirect_in_config.html

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 请问如何在openpcdet上对KITTI数据集的测试集进行结果评估?
  • ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源
  • ¥15 安卓JNI项目使用lua上的问题
  • ¥20 RL+GNN解决人员排班问题时梯度消失
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路
  • ¥15 phython读取excel表格报错 ^7个 SyntaxError: invalid syntax 语句报错