2016-07-25 1 views
3

에 :: FOSUserBundle에 layout.html.twig 존재하지 않습니다하지만 난 'http://localhost/Tolkien_Bestiaire/web/app_dev.php/profile/'변수 "오류"나는 웹 사이트에 일하고 있어요 라인 5

오류에 갈 때 나는 오류가 있습니다

는 "변수"오류 "FOSUserBundle에 존재하지 않는 :: layout.html.twig을 5 호선에서"

내가 FosUserBundle를 사용합니다.

layout.html.twig :

{% extends "TolkienCoreBundle::layout.html.twig" %} 

{% block body %} 

    {% if error %} 
     <div class="alert alert-danger">{{ error.message }}</div> 
    {% endif %} 

    <form action="{{ path('fos_user_security_check') }}" method="post" id="loginForm"> 
     <label for="username">Pseudo :</label><br/> 
     <input type="text" id="username" name="_username" value="{{ last_username }}" class="col-md-4"/><br/><br/> 

     <label for="password" class="col-md-12">Mot de passe :</label><br/> 
     <input type="password" id="password" name="_password" class="col-md-4"/><br/><br/> 

     <input type="submit" value="Connexion" class="col-md-4" /> 
    </form> 

{% endblock %} 

security.yml :

security: 
    encoders: 
    Tolkien\UserBundle\Entity\User: sha512 

    role_hierarchy: 
    ROLE_ADMIN:  [ROLE_AUTEUR, ROLE_MODERATEUR] 
    ROLE_SUPER_ADMIN: [ROLE_ADMIN, ROLE_ALLOWED_TO_SWITCH] 

    providers: 
    main: 
     id: fos_user.user_provider.username 

    firewalls: 
    dev: 
     pattern: ^/(_(profiler|wdt)|css|images|js)/ 
     security: false 
    main: 
     pattern:  ^/ 
     anonymous: true 
     provider:  main 
     form_login: 
     login_path: fos_user_security_login 
     check_path: fos_user_security_check 
     default_target_path: tolkien_bestiaire_home 
     logout: 
     path:  fos_user_security_logout 
     target:  /tolkien 
     remember_me: 
     secret:  %secret% 



    access_control: 
    - { path: ^/admin, roles: ROLE_ADMIN } 

CoreController.php 합니다 (extand의 컨트롤러 layout.html.twig 할) :

<?php 

namespace Tolkien\CoreBundle\Controller; 

use Symfony\Bundle\FrameworkBundle\Controller\Controller; 
use Symfony\Component\HttpFoundation\RedirectResponse; 
use Symfony\Component\HttpFoundation\Request; 

class CoreController extends Controller 
{ 
    public function indexAction() 
    { 
     return $this->render('TolkienCoreBundle:Core:index.html.twig'); 
    } 

    public function contactAction(Request $request) 
    { 
     $session = $request->getSession(); 
     $session->getFlashBag()->add('info', 'La page de contact n’est pas encore disponible, merci de revenir plus tard.'); 

     return $this->redirectToRoute('tolkien_core_home'); 

    } 
} 
로그인의 나뭇 가지 템플릿에

{% if error is defined %} 
{% if error %} 
... do something with error message 
{% endif %} 
{% endif %} 

:

감사합니다 :)

+2

'{% if error %}'대신 {{% if error is defined %}'를 사용해야합니다. http://twig.sensiolabs.org/doc/tests/defined.html – pavlovich

답변

0

솔루션은 다른 경우에 오류를 래핑하는 것입니다.

관련 문제