我必須爲用戶每天創建集合,以便每天他們註冊,因此如果我有5個用戶和2個註冊日期2013-03-02和3個已註冊2013- 03-03我將有2個集MongoDB Doctrine ODM在運行時更改文檔的集合名稱
用戶在一個YML文件中聲明,沒有收集
在項目中,我通過CLI像這樣
foreach($arUsers as $key=>$arUser)
{
$collection_name = "day_".$arUser['date'];
$user = new User();
/* Change the collection name to be dynamic */
$OdmMetaData = MeltApplication::getDocumentManager()->getClassMetaData(get_class($user));
$OdmMetaData->setCollection($collection_name);
$user->setUserId($arUser['user_id']);
$user->setEmail($arUser['email']);
....
$this->getDocumentManager()->persist($user);
$this->getDocumentManager()->flush();
}
問題做一個進口的是,當我在mongoDB中查看只看到一個名爲day_2013- 03-03「這是最後的日期,如果我設置了MeltApplication :: getDocumentManager() - > flush();在foreach結束聲明之後,我應該把它保存在03-02的第一個集合中。
是否有任何選項可以做到這一點,將它們分開保存?
感謝
你是怎麼做到的? – PMoubed