1

我们可以轻松地将控制器嵌入到 twig 的模板中:

{% render "AcmeGolferBundle:Golfer:showGolfersList" %}

当我们基本上使用这样的控制器时:

 /**
 * Lists all golfers.
 *
 * @Route("/golfersList", name="golfers_list")
 * @Template()
 */
public function showGolfersListAction()
{
    //....doStuff
}

在这种情况下,控制器的唯一用途将是在该模板中。有没有办法避免用户直接触发 url,这意味着/golferList它自己?

编辑

我要说明的要点如下:我需要用户通过它嵌入的模板来使用控制器,而不是直接通过 url。我意识到这可能是不可能的,但由于控制器是嵌入式的,它没有适当的 css 结构。因此,如果直接通过 url 触发,在页面上会显得非常难看。

4

1 回答 1

2

通过 IP 保护路由可能对您有用:

security: 
    # ...
    access_control:
        - { path: ^/golferList, roles: IS_AUTHENTICATED_ANONYMOUSLY, ip: 127.0.0.1 }
于 2012-08-16T13:55:50.200 回答