Bonjour,
Je commence la prise en main du framework Symfony 2 pour un projet personnel. J'ai déjà un bundle qui gère ma plateform où l'on peut poster des annonces et actuellement sans avoir besoin d 'être enregistré.
J'ai suivis le tuto vidéo proposé sur grafikart.fr pour installer et mettre en place la suite avec FOSUserBundle.
L'installation c'est bien passé mais je n'arrive pas à surchargé mon layout.html.twig et je ne comprends pas d'où peut venir ce frein.
au cas ou je vous montre l'architecture de mon projet :

-app
    - resources
        -views
            base.html.twig
 -src
    - JOB
        -platformBundle
            -resources
                -views
                    layout.html.twig
         -UserBundle
            -resources
                -views
                    layout.html.twi

Je ne parviens pas à faire en sorte que le contenu du UserBundle/Resources/views/layout.html.twig apparaisse dans le base.html.twig.
Alors que pour PlatformBundle il n'y a aucun soucis.

Si vous pouviez m'orienter j'en serai ravi,
Merci

8 réponses


rif152
Réponse acceptée

Ok merci ;)
Je ne voit effectivement pas de souci particulier (a mon niveau) :s , a tu une erreur qui s'affiche? A tu essayer de vider le cache de symfony?

nicovak
Réponse acceptée

Si tu dois avoir deux objets clients différents ainsi que deux espaces clients différents je te conseil ce bundle

Dans ton bundle UserBundle tu peux spécifier ceci dans la classe UserBundle.

namespace JOB\UserBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;

class JobUserBundle extends Bundle
{
    public function getParent()
    {
        return 'FOSUserBundle';
    }
}

Merci nicovak de ta rapidité de reponse, cependant c est bien ce que j'avais fait.
C est bien le JOBUserBundle situé dans :

-src
    -UserBundle
        JOBUserBundle.php

?

Donne nous un peu plus de code stp ;)

ton JOBUserBundle, le layout.hmtl.twig de ton userbundle sa serait déja un debut :)

Oui en effet pour le coup je n'ai pas fourni beaucoup d'informations.

<?php
#src/UserBundle/JOBUserBundle.php
namespace JOB\UserBundle;

use Symfony\Component\HttpKernel\Bundle\Bundle;

class JOBUserBundle extends Bundle
{
    public function getParent()
    {
        return 'FOSUserBundle';
    }
}

Et : src/UserBundle/Resources/views/layout.html.twig

{% extends "base.html.twig" %}

{% block body %}
        <div>
            {% if is_granted("IS_AUTHENTICATED_REMEMBERED") %}
                {{ 'layout.logged_in_as'|trans({'%username%': app.user.username}, 'FOSUserBundle') }} |
                <a href="{{ path('fos_user_security_logout') }}">
                    {{ 'layout.logout'|trans({}, 'FOSUserBundle') }}
                </a>
            {% else %}
                <a href="{{ path('fos_user_security_login') }}">{{ 'layout.login'|trans({}, 'FOSUserBundle') }}</a>
            {% endif %}
        </div>

            {% if app.request.hasPreviousSession %}
                {% for type, messages in app.session.flashbag.all() %}
                    {% for message in messages %}
                        <div class="flash-{{ type }}">
                            {{ message }}
                        </div>
                    {% endfor %}
                {% endfor %}
            {% endif %}

        <div>
            {% block fos_user_content %}
            {% endblock fos_user_content %}
        </div>
{% endblock %}

En effet, les derniers cache:clear ne marchaient pas, du coup ça venait de là.
Une petite question pr m orienter rapidement. Si je veux proposer 2 sortes d inscritiption, c est a dire une pr les user normal et une autre pr des entreprises par exemble, je peux gérer cela avec les ROLE ? et le seul bundlefosuser ?

Merci je vais voir ce que je peux faire avec du coup.