Bonjour

J'ai crée des fixtures dans l'ordre. Tout va bien.
Dès que j'utilise des références, le chargement des données fonctionne aussi mais sans charger la table de jointure.
Donc il y a un problème !!

J'ai vérifié et vérifié partout et tout a l'air correct. Je ne comprend pas pourquoi cette table de jointure n'est pas chargée à mois que les références n'acceptent pas le mapping en yml.

Infos:
ManyToMany
entités en yml
Symfony 2.4.4
les différents bundles comme datas-fixtures, etc ... ont été bien installés.

Merci de votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
public function load(ObjectManager $manager){
    $post = new Post();
    $post->setTitle('Le Lorem Ipsum 7');
    $post->setSubtitle('test 7');
    $post->setChapo('Le Lorem Ipsum est simplement du faux texte employé dans la composition et la mise');
    $post->setBody('Le Lorem Ipsum est simplement du faux texte employé dans la composition et la mise en page avant impression. Le Lorem Ipsum est le faux texte standard de l\'imprimerie depuis les années 1500, quand un peintre anonyme assembla ensemble des morceaux de texte pour réaliser un livre spécimen de polices de texte. Il n\'a pas fait que survivre cinq siècles, mais s\'est aussi adapté à la bureautique informatique, sans que son contenu n\'en soit modifié. Il a été popularisé dans les années 1960 grâce à la vente de feuilles Letraset contenant des passages du Lorem Ipsum, et, plus récemment, par son inclusion dans des applications de mise en page de texte, comme Aldus PageMaker.');
    $post->setCreatedAt(new \DateTime('2014-01-02 13:00:09'));
    $post->setUpdatedAt($post->getCreatedAt());
    $post->setPublished(true);
    $post->setPublishedAt($post->getCreatedAt());
 
    $this->addReference('Le Lorem Ipsum 7', $post);
 
    $manager->persist($post);
    $manager->flush();
}
 
public function getOrder() {
    return 1;
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
public function load(ObjectManager $manager){
    $image = new Image();
    $image->setUrl('Bureau');
    $image->setAlt('bureau-13-02-2010.jpg');
    $image->setCreatedAt(new \DateTime('2014-01-02 13:00:09'));
    $image->setUpdatedAt(new \DateTime('2014-01-02 13:00:09'));
 
    $image->addPost($this->getReference('Le Lorem Ipsum 7'));
 
    $manager->persist($image);
    $manager->flush();
}
 
public function getOrder() {
    return 2;
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
public function load(ObjectManager $manager){   
    $categorie = new Categorie();
    $categorie->setTitle('Symfony1');
    $categorie->setCreatedAt(new \DateTime('2014-01-02 13:00:09'));
 
    $categorie->addPost($this->getReference('Le Lorem Ipsum 7'));
 
    $manager->persist($categorie);
    $manager->flush();
}
 
public function getOrder() {
    return 3;
}
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
Rubens\CoreBundle\Entity\Post:
    type: entity
    table: post
    repositoryClass: Rubens\CoreBundle\Entity\PostRepository
    id:
        id:
            type: integer
            id: true
            generator:
                strategy: AUTO
    fields:
        title:
            type: string
            length: 255
        subtitle:
            type: string
            length: 255
        chapo:
            type: text
        body:
            type: text
        createdAt:
            type: datetimetz
        updatedAt:
            type: datetimetz
        published:
            type: boolean
        publishedAt:
            type: datetimetz
    lifecycleCallbacks: {  }
    manyToMany:
        images:
            targetEntity: Image
            cascade: ["persist"]
            inversedBy: posts
            joinTable:
                name: post_image
                joinColumns:
                    post_id:
                        referencedColumnName: id
                inverseJoinColumns:
                    image_id:
                        referencedColumnName: id
        categories:
            targetEntity: Categorie
            inversedBy: posts
            cascade: ["persist"]
            joinTable:
                name: post_categorie
                joinColumns:
                    post_id:
                        referencedColumnName: id
                inverseJoinColumns:
                    categorie_id:
                        referencedColumnName: id
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
Rubens\CoreBundle\Entity\Image:
    type: entity
    table: image
    repositoryClass: Rubens\CoreBundle\Entity\ImageRepository
    id:
        id:
            type: integer
            id: true
            generator:
                strategy: AUTO
    fields:
        url:
            type: string
            length: 255
        alt:
            type: string
            length: 255
        createdAt:
            type: datetimetz
        updatedAt:
            type: datetimetz
    lifecycleCallbacks: {  }
    manyToMany:
        posts:
            targetEntity: Post
            mappedBy: images
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
Rubens\CoreBundle\Entity\Categorie:
    type: entity
    table: categorie
    repositoryClass: Rubens\CoreBundle\Entity\CategorieRepository
    id:
        id:
            type: integer
            id: true
            generator:
                strategy: AUTO
    fields:
        title:
            type: string
            length: 255
        createdAt:
            type: datetimetz
    lifecycleCallbacks: {  }
    manyToMany:
        posts:
            targetEntity: Post
            mappedBy: categories