我使用Symfony2和doctrine_mongodb。请问为什么我的findBy和findAll会产生空的大括号? user_id是整数。
$repository = $this->get('doctrine_mongodb')->getManager()->getRepository('MyMpBundle:Scripts');
我尝试了以下内容:
$scripts = $repository -> findBy(array('user_id' => 1)); //produces empty {}
$scripts = $repository -> findAll(); //produces empty{}
$scripts = $repository -> findOneBy(array('user_id' => 1)); //produces value
我希望将$脚本分配给mongodb数据库中的所有文档。 Scripts.php如下所示:
/**
* @MongoDB\Document
*/
class scripts
{
/**
* @MongoDB\Id
*/
public $id;
/**
* @MongoDB\String
*/
public $name;
/**
* @MongoDB\String
*/
public $description;
/**
* @MongoDB\Int
*/
public $index;
/**
* @MongoDB\Int
*/
public $user_id;
任何帮助请:)
答案 0 :(得分:0)
@Stenie回答:
您如何检查$ scripts的值?生成“空”结果的示例都返回Cursor对象而不是文档,而您的示例返回单个文档。在前两种情况下,我怀疑你需要迭代返回的游标(使用foreach或$ scripts-> getNext())。