这是我的代码:无法使用DataFixtures加载数据
// my article fixture
<?php
namespace My\BlogBundle\DataFixtures\ORM;
use Doctrine\Common\DataFixtures\AbstractFixture;
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
use My\BlogBundle\Entity\Article;
use My\BlogBundle\Entity\User;
use My\BlogBundle\Entity\Tag;
class ArticleFixtures extends AbstractFixture implements OrderedFixtureInterface
{
function load($em)
{
$article1 = new Article();
$article1->setCreatedAt(new \Datetime);
$article1->setTitle('hello my title test');
$article1->setContent('Lorem ipsum dolor sit amet, consectetur adipiscing eletra electrify denim vel ports.\nLorem ipsum dolor sit ameLorem ipsum dolor sit amet, consectetur adipiscing eletra electrify denim vel ports.\nLorem ipsum dolor sit ameLorem ipsum dolor sit amet, consectetur adipiscing eletra electrify denim vel ports.\nLorem ipsum dolor sit ameLorem ipsum dolor sit amet, consectetur adipiscing eletra electrify denim vel ports.\nLorem ipsum dolor sit ameLorem ipsum dolor sit amet, consectetur adipiscing eletra electrify denim vel ports.\nLorem ipsum dolor sit ame');
$article1->setUser($em->merge($this->getReference('user-1')));
$article1->addTag($em->merge($this->getReference('tag-1')));
$em->persist($article1);
$em->flush() ;
}
function getOrder()
{
return 3 ;
}
}
// my tag fixture
<?php
namespace My\BlogBundle\DataFixtures\ORM;
use Doctrine\Common\DataFixtures\AbstractFixture;
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
use My\BlogBundle\Entity\Tag;
class TagFixtures extends AbstractFixture implements OrderedFixtureInterface
{
function load($em)
{
$tag = new Tag();
$tag->setNom('tagTest') ;
$em->persist($tag);
$em->flush();
$this->addReference('tag-1' ,$tag);
}
function getOrder()
{
return 2;
}
}
// my user fixtures
<?php
namespace My\BlogBundle\DataFixtures\ORM;
use Doctrine\Common\DataFixtures\AbstractFixture;
use Doctrine\Common\DataFixtures\OrderedFixtureInterface;
use My\BlogBundle\Entity\User;
class UserFixtures extends AbstractFixture implements OrderedFixtureInterface
{
function load($em)
{
$user1 = new User() ;
$user1->setPseudo('xsaidx');
$user1->setEmail('[email protected]');
$user1->setPassword('hah');
$em->persist($user1);
$em->flush();
$this->addReference('user-1' ,$user1);
}
function getOrder()
{
return 1 ;
}
}
但我发现了这个错误:
A new entity was found through the relationship 'My\BlogBundle\Entity\Article#tags' that was not configured to cascade persist operations for entity: Doctrine\Common\Collections\[email protected] Explicitly persist the new entity or configure cascading persist operations on the relationship. If you cannot find out which entity causes the problem implement 'My\BlogBundle\Entity\Tag#__toString()' to get a clue.