我有两个实体和两个存储库。如何在实体中保存数据?

时间:2013-10-17 06:35:24

标签: symfony doctrine-orm

名为CountryRegion的实体。

名为CountryRepositoryRegionRepository的存储库。

如何在Region实体中存储数据?

$em = $this->container->get('doctrine')->getEntityManager();

$countryId=$em->getRepository('LocationBundle:Country')->find(1));
$region=new Region(); //How to create Region Ojbect
$region->setCountryId($countryId);
$region->setName('abc');
$region->save();

1 个答案:

答案 0 :(得分:0)

首先,您应该使用以下内容修改Controller Action的第一行:

$em = $this->getDoctrine()->getManager();

其次,你必须在其Entity中实现Region的构造函数,而在Controller中你必须正确传递构造函数的参数。

最后,要将新Region保存到数据库中,您必须使用以下语句:

    $em->persist($region); 
    $em->flush();