に_idによってレコードを見つけることが、私はできません。私はそれを行う方法の例を見つけましたが、それを働かせることはできません。例:は、なぜ私はそれがMongoID「_id」フィールドのではMongoDBのレコードを見つけようとしていますMongoDBの
$recID = "010101010101011"; //would be a valid mongodb _id
$recID = new MongoId((string)$recID); // I have tried it without the (string) cast too
$cursor = $this->Collection->findOne(array('_id' => $recID));
print_r($cursor);
それを出力しない:内部
MongoCursor (
)
何も。
私は、このような「firstNameの」として別のフィールドに上記の「_id」を変更し、最初の名前を渡すことによって働いている他のすべてを確認しても、私は戻って有効なデータを取得します。
なぜこれは機能しませんか?
私も文字列として$ RECID、差なしで検索を試してみました。
はここに(私が適切に照会していた場合、私はわからないが)のmongoシェルから何が起こるかです:
>
> db.Employee.find({login:"myperson"})
{ "_explicitType" : "project.Employee", "_id" : ObjectId("4e209564203d83940f0000
06"), "active" : true, "addedDate" : "07/15/2011 15:29:21", "domain" : "xxx",
"id" : ObjectId("4e209564203d83940f000006"), "lastLogin" : "07/20/2011 19:13:36
", "login" : "myperson", "name" : "My Person", "pw" : "", "ulevel" : 9999
}
> db.Employee.find({id:"4e209564203d83940f000006"})
> db.Employee.find({_id:"4e209564203d83940f000006"})
>
通告何もIDまたは_idのために返されません。
を見つけることができますか? – KaKa