Salut,

j'ai besoin d'avoir un accès a la session dans le repository.
Alors normalement ça fonctionne avec les services mais ça ne fonctionne pas je comprend pas pourquoi.

Config.yml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
imports:
    - { resource: parameters.ini }
    - { resource: security.yml }
    - { resource: "@SocieteProjetBundle/Resources/config/service.xml" }
service.xml
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="UTF-8" ?>
 
<container xmlns="http://symfony.com/schema/dic/services"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
  <parameters>
    <parameter key="objet.class">Societe\ProjetBundle\Model\ObjetRepository</parameter>
  <services>
 
    <service id="objet.session" class="%objet.class%">
      <argument type="service" id="session" />
    </service>
</service>
ObjetRepository.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
<?php
namespace Societe\ProjetBundle\Model;
 
use Doctrine\ORM\EntityRepository;
 
class ObjetRepository extends EntityRepository
{
    public function __construct($session){
        //Je récupère ma session
    }
}
Cela ne fonctionne pas, j'ai essayé de reprendre la même structure du construct que le parent et ça ne fonctionne pas non plus :

service.xml (j'ai rajouté)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
<argument />
<argument />
<argument type="service" id="session" />
ObjetRepository.php
Code : Sélectionner tout - Visualiser dans une fenêtre à part
__construct($em, $class, $session)
Il me dit qu'il perd l'argument 3...