findBy() 和 findAll() 生成空的大括号



我使用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如下所示:

 /**
 * @MongoDBDocument
 */
class scripts
{
/**
 * @MongoDBId
 */
public $id;
/**
 * @MongoDBString
 */
public $name;
/**
 * @MongoDBString
 */
public $description;
/**
 * @MongoDBInt
 */
public $index;
/**
 * @MongoDBInt
 */
public $user_id;

任何帮助请:)

正如@Stenie回答的那样:

您如何检查$scripts的价值?生成"空"结果的示例都返回 Cursor 对象而不是文档,而工作的示例返回单个文档。在前两种情况下,我怀疑您需要迭代返回的游标(使用 foreach 或 $scripts->getNext())。

相关内容

  • 没有找到相关文章

最新更新