【问题标题】:Session control Various controllers at the same page in Symfony 2?会话控制 Symfony 2 中同一页面上的多个控制器?
【发布时间】:2011-09-27 15:53:05
【问题描述】:

我正在尝试控制会话以禁止访问我的网络应用程序的某些页面。方法很简单,一个布尔会话变量。问题是每个动作都有一个页面,但是,我认为在每个动作中询问用户是否登录并不优雅。我怎样才能在 MVC 架构中优雅地做到这一点?这种方式看起来很糟糕。我在想有一个父动作重定向到最后一个,即呈现页面的那个,对吗?也许我可以在那里进行检查。

public function createAction(Request $request){
        $sess = $this->getRequest()->getSession();
        if ($sess->get('logged') == true) {
        // ---- ACTION CODE GOES HERE ---- //
        }
}

【问题讨论】:

  • 6 个问题 ... 0 个接受的答案 ... :-/

标签: model-view-controller session symfony controllers


【解决方案1】:

在Symfony2中,如果站点需要授权的部分在同一路径下,可以在安全配置中使用access_control部分:

# app/config/security.yml
security:
    # ...
    access_control:
        - { path: ^/secured/area, roles: ROLE_USER }

您可以在book 中找到更多保护您的应用的方法

【讨论】:

    猜你喜欢
    • 2018-02-22
    • 1970-01-01
    • 2012-08-17
    • 2020-04-02
    • 2011-10-14
    • 1970-01-01
    • 1970-01-01
    • 2016-10-17
    • 1970-01-01
    相关资源
    最近更新 更多