Arangodb Arango query我让它在shell中工作,但可以';t开始在Arango/Foxx工作

Arangodb Arango query我让它在shell中工作,但可以';t开始在Arango/Foxx工作,arangodb,foxx,Arangodb,Foxx,使用我的数据库返回 db.broad_broad.byExample({"location":"space_1"}).toArray() 几个小时后,我可以在Foxx中实现这一点。我不确定我是否正确理解了这个问题,所以让我用我的话重复一下: 你有疑问吗 db.broad\u broad.byExample({“location”:“space\u 1}).toArray() 它按预期在arangosh工作。 然后你把它复制到一个Foxx应用程序,但它不工作,对吗 很可能是内部db模块缺少req

使用我的数据库返回

db.broad_broad.byExample({"location":"space_1"}).toArray()

几个小时后,我可以在Foxx中实现这一点。我不确定我是否正确理解了这个问题,所以让我用我的话重复一下: 你有疑问吗

db.broad\u broad.byExample({“location”:“space\u 1}).toArray()

它按预期在arangosh工作。 然后你把它复制到一个Foxx应用程序,但它不工作,对吗

很可能是内部db模块缺少
require
,该模块始终加载在shell中,但没有加载在Foxx环境中

以下最小的Foxx应用程序应适用于您的示例:

[ 
  { 
    "_id" : "broad_broad/416394873974", 
    "_key" : "416394873974", 
    "_rev" : "554852115738", 
    "location" : "space_1", 
    "space_1" : { 
      "players" : { 
        "2" : [ 
          "ninja" 
        ] 
      } 
    } 
  } 
]

如果这不能解决您的问题,您是否可以在服务器日志中找到错误消息以帮助我调试?

在Foxx中运行上述查询时,实际发生了什么?您是否收到任何错误消息,以及哪些错误消息?或者您只是在寻找一种方法,如何从Foxx路由内部运行查询?
var db = require("internal").db; // Mind this line here
var Foxx = require("org/arangodb/foxx");
var app = new Foxx.Controller(applicationContext);

/** Short description
 *
 * Long description.
 */
app.get("/test", function(req, res) {
  var result = db.broad_broad.byExample({"location":"space_1"}).toArray();
  res.json(result);
});