我创建了一个管理包。我使用自己的逻辑来检查用户是否登录。但是,如果用户没有登录,则不会重定向。每当索引操作调用isLoggedIn()函数时通过构造函数调用但重定向部分登录不起作用。重定向不在Symfony 2中工作
我controoler代码
<?php
namespace Nitin\AdminBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Bitcoin\AdminBundle\BitcoinAdminBundle;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpFoundation\RedirectResponse;
class AdminController extends Controller {
public $session;
public $container;
public $pageData;
public function __construct() {
$this->container = NitinAdminBundle::getContainer();
$this->session = $this->container->get('session');
$this->isLoggedIn();
}
public function indexAction(Request $request) { //die(''.__LINE__);
return $this->render('NitinAdminBundle:Default:index.html.twig');
}
public function isLoggedIn() {
$isLoggedin = $this->session->get('loggedIn', FALSE);
if (FALSE === $isLoggedin) {
return $this->redirect($this->generateUrl('nitin_admin_login'));
}
return false;
}
public function logoutAction() {
$this->session->invalidate();
return $this->redirect($this->generateUrl('nitin_admin_login'));
}
}
你为什么要用__constructor? –
我知道复杂性一开始是可怕的,但是真的值得使用symfony的安全组件。 – Maerlyn
@Maerlyn你是对的。我将使用安全组件。 但也想确定为什么发生这个问题。 –