Symfony2 - 为ManyToMany加载Doctrine灯具

时间:2014-05-11 22:56:33

标签: symfony entity-relationship fixtures

我了解如何使用以下方法为OneToMany设置加载夹具:

$this->addReference('category-1', $category1);

并将其与以下内容一起使用:

$blog1->setCategory($manager->merge($this->getReference('category-1')));

但是,如果博客有2个或更多类别,你会如何为ManyToMany关系做到这一点?

您是否只需将灯具中的线加倍,以便有2个或更多 - > gt; setCategory()字段

$blog1->setCategory($manager->merge($this->getReference('category-1')));

$blog1->setCategory($manager->merge($this->getReference('category-2')));

或使用

$blog1->setCategory($manager->merge($this->getReference('category-1', 'category-2')));

1 个答案:

答案 0 :(得分:1)

如果查看Doctrine\Common\DataFixtures\AbstractFixture类并查看->getReference()函数,它将显示传入函数的变量是字符串。

这意味着第一个示例,调用getReference两次就是它的工作方式。

$blog1->setCategory($manager->merge($this->getReference('category-1')));
$blog1->setCategory($manager->merge($this->getReference('category-2')));