我想从我的mongo数据库中查找一些文档,我正在使用函数:FindBy()不幸的是,这个函数没有任何字段选择参数,就像原生的MongoDB驱动程序对函数:find()一样。有没有人知道如何在Mongodb的教义中选择自定义字段?谢谢
将 QueryBuilder 与 select
运算符一起使用:
$result = $dm->createQueryBuilder('User')->select('field1', 'field2')->field('field3')->equals('somevalue')->getQuery()->execute();
http://docs.doctrine-project.org/projects/doctrine-mongodb-odm/en/latest/reference/query-builder-api.html
如果需要动态选择字段,请将字段名称用作数组。
$selects = ['field1','field2','field3']; // you can pass through api or else
$result = $dm->createQueryBuilder('Collection')->select($selects)->getQuery()->execute();
findBy 确实支持运算符,但提供的参数应该是一个数组,其中字段名称作为第一维的键,如下所示:
$results = $yourRepositoryInstance->findBy(['somefield' => ['$in' => $arrayOfValues]]);