Problème de partage de références
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:
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:
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:
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:
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:
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:
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 |