[英]Symfony 2 Doctrine ODM MongoDB perstist an hydrate document
當我要保留$ notice文檔時,它將保存$ contexteUtilObj,但不會將$ contexteUtilObj與$ notice文檔相關聯。
//Controller
$dm = $this->get('doctrine.odm.mongodb.document_manager');
$notice = $dm->getRepository('WikiludoNoticeBundle:Notice')->find($id);
$contexteUtils = array();
$notice->setContexteUtilisations($contexteUtils);
if (count($form['context']) > 0) {
foreach ($form['context'] as $key => $context) {
if ($key == 0 and ! $context['valeur']) {
break;
}
if (!$context['valeur']) {
continue;
}
if ($context['id'] and ! is_numeric($context['id'])) {
$contexteUtilObj = $dm->getRepository('WikiludoNoticeBundle:ContexteUtilisation')->find($context['id']);
} else {
$contexteUtilObj = new \Wikiludo\NoticeBundle\Document\ContexteUtilisation();
}
$contexteUtilObj->setContexteUtilisation1($context['valeur']);
$notice->addContexteUtilisations($contexteUtilObj);
}
}
$dm->persist($notice);
$dm->flush();
...
//Notice Document Structure
/**
* @MongoDB\ReferenceMany(
* targetDocument="Wikiludo\NoticeBundle\Document\ContexteUtilisation",
* cascade="all"
* )
*/
protected $contexteUtilisations;
對不起,我解決了我的問題。 我必須這樣做:
$dm->flush($notice);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.