Doctrine MongoDB - 有没有办法从JSON构建查询?

tgr*_*ser 7 doctrine mongodb symfony doctrine-odm doctrine-mongodb

我有一个任意MongoDB JSON查找查询字符串,例如:

{ "address.city": "Seattle"}
Run Code Online (Sandbox Code Playgroud)

要么

{ qty: { $gt: 5, $lt: 50 }
Run Code Online (Sandbox Code Playgroud)

是否有任何现有方法从JSON字符串创建Doctrine.MongoDB.Query对象?或者直接查询mongo然后将这些结果传递给学说进行补水?

tgr*_*ser 1

我自己没有使用过它,但最近的这个捆绑包似乎是为了达到这个确切目的而创建的(将 querybuilderjs 纳入理论)。

https://github.com/fourlabsldn/QBJSParserBundle

https://github.com/fourlabsldn/QBJSParser

         $parsedRuleGroup = $this->get('fl_qbjs_parser.json_query_parser.doctrine_orm_parser')->parseJsonString($jsonString, Product::class);

         $query = $this->get('doctrine.orm.entity_manager')->createQuery($parsedRuleGroup->getDqlString());
         $query->setParameters($parsedRuleGroup->getParameters());
         $results = $query->execute();
Run Code Online (Sandbox Code Playgroud)