2014-01-22 35 views
0

我有兩個集合('公司'和'用戶'),當我向集合'公司'添加一個新文檔時(通過軟件默認),我想在一個新的管理員用戶的'用戶'集合上創建一個新文檔,但是這個新用戶必須與之前創建的'公司'集合中的新文檔相關聯... ...如何在向MongoDB添加文檔時創建最後的ObjectId

類似'select @@身份'上MS SQL:P

示例數據結構:

Companies. _id = ObjectId("aaaa"); 
     . Name = "Company name"; 

Users. _id = ObjectId("uuuu"); 
    . Name = "admin" 
    . CompanyId = ???? 

ObjectiId( 「AAAA」)中定義和存儲Collection.Update通過蒙戈,以存儲關於Users.CompanyId

問候,

路易斯佩德羅

回答

0

而是使用MongoID(ObjectID),你可以使用你自己的PK:

當你插入公司文檔時,如果你明確聲明瞭一個名爲'_id'的字段和他的值,mongodb不會去cre再次使用Object_id,您也可以將您在變量中聲明的值存儲起來,並將其用於在Users集合中插入文檔。

或者您可以在插入它後查找公司,查找最後一個插入,然後推斷系統生成的ID並重新使用它。

希望幫助

0

要添加到冒犯的觀點,你可以使用下面的代碼片段找到最後文件

db.companies.find({},{ 「_ ID」:1})。跳過(db.companies.find()計數() - 1);

相關問題