2011-09-27 58 views
0

我試圖控制會話以禁止訪問我的Web應用程序的某些頁面。方法很簡單,一個布爾會話變量。事情是每個動作都有一個頁面,但是,如果用戶登錄或不登錄,我認爲在每個動作中都不會優雅。我如何在MVC架構中優雅地做到這一點?這看起來很糟糕。我在想,有一個父動作重定向到最後一個,它是呈現頁面的那個,是不是?也許我可以在那裏做檢查。會話控制Symfony 2中同一頁面上的各種控制器?

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

6個問題... 0接受的答案...: -/ – Raffael

+0

什麼?我不明白你的意思 – R01010010

回答

1

在Symfony2中,如果網站的需要授權的部分是相同的路徑下,你可以使用在安全配置ACCESS_CONTROL部分:

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

你可以找到更多的途徑來保護您的應用在book