Symfony简单登录
我要登录我的网页关于symfony文档的例子,我有一个小问题。这是工作,但我清除缓存后第二次工作。在第一次,我发现您的会话超时错误或您禁用cookie。Symfony简单登录
它base.html.twig
{% if is_granted('ROLE_USER') %}
<div class="content">
<div class="starter-template">
{% block body %}{% endblock %}
</div>
</div>
{% else %}
<div class="container">
<div class="row">
<div class="col-md-offset-5 col-md-3">
<div class="form-login">
<h4>Welcome back.</h4>
<form action="{{ path('login') }}" method="post">
<input type="text" name="_username" id="userName" class="form-control input-sm chat-input" placeholder="username" />
</br>
<input type="password" name="_password" id="userPassword" class="form-control input-sm chat-input" placeholder="password" />
</br>
<div class="wrapper">
<span class="group-btn">
<button type="submit" href="#" class="btn btn-primary btn-md">login <i class="fa fa-sign-in"></i></button>
</span>
</div>
</form>
</div>
</div>
</div>
</div>
{% endif %}
和登录操作:
/**
* @Route("/login", name="login")
*/
public function loginAction(Request $request)
{
$authenticationUtils = $this->get('security.authentication_utils');
$error = $authenticationUtils->getLastAuthenticationError();
$lastUsername = $authenticationUtils->getLastUsername();
return $this->render('security/login.html.twig', array(
'last_username' => $lastUsername,
'error' => $error,
));
}
我尝试返回重定向在这个动作,但没有帮助我。
如果登录在/登录页面,它的工作okey。但我想用base.html
如何在建设模式尝试工作。 1)web目录转到 2)打开app.php文件 3)内app.php代码更改为
$kernel = new AppKernel('dev', true);
$response = $kernel->handle($request);
$response->send();
$kernel->terminate($request, $response);
从控制器中删除
/**
* @Route("/login", name="login")
*/
最后尝试在路由文件移动路线。 例如在routing.yml中:
login:
path: /login
defaults: { _controller: YourNameBundle:NameYourController:login }
谢谢,但它并没有帮助我 –
第二次工作后 –
请打勾我的正确答案。 –
你使用奏鸣曲管理包吗? –
不,它是来自http://symfony.com/doc/current/security/form_login_setup.html的登录示例,它在另一个项目中工作,当我在登录页面中使用登录并在登录后重定向时,但现在我发送登录数据/从主页登录 –