2011-06-10 59 views
0

您好,我正在制作一个使用mongoDB进行持久化的web应用程序,我想知道如何使用自动生成的mongo ID指向集合中的普通行。例如,我们有一个用户集合(带有'_id'字段)和另一个集合来存储用户的API密钥信息。如何链接这两个,以便API密钥集合中的'_id'对应于用户集合,以便它们指向正确的用户。这是在PHP正在做提前5如何使用mongoID的

感谢, RayQuang

+0

也许这可以帮助:http://www.mongodb.org/display/DOCS/Schema+Design#SchemaDesign-Embedvs.Reference – hakre 2011-06-10 17:13:40

回答

1

您可以用自己的ID覆盖默认ID。 所以当你做一个插入时,你可以在你的对象中设置“_id”,相当于你的API密钥集中存在的mongoid 。

示例代码:

<?php 

$objectFromAPICollection = find_object_from_API_collection; 

$userid = $objectFromApiCollection["_id"] ; 

$theObjId = new MongoId($userid); 

$connection = new Mongo(); 

$objectToInsert = array("_id" => $theObjId , "data" => $someData); 

// this will return our matching entry. 
$connection->selectDB('someDb')->selectCollection('users')->insert($objectToInsert); 

>