ArangoDB/FOXX 存储库问题
ArangoDB/FOXX repositories issue
我正在 ArangoDB 中的 FOXX 应用程序的存储库中尝试自定义查询:
/*clinics.js */
'use strict';
var Foxx = require('org/arangodb/foxx');
var ClinicsRepository = Foxx.Repository.extend({
// Add your custom methods here
//Returns all procedures from a clinic, given the clinic id
getAllProcedures: Foxx.createQuery({
query: 'FOR clinic IN exameFacil_clinics FILTER clinic._key == [@id] RETURN clinic.procedures',
params: ['id']
})
});
exports.repository = ClinicsRepository;
I did this following the Foxx cookbook, but it always gives me an
error:
[ArangoError 3103: failed to invoke module File:
c:/Program Files/ArangoDB
2.6.2/var/lib/arangodb-apps/_db/_system/exameFacil/APP/controllers/clinics.js]
[ArangoError
3103: failed to invoke module File: c:/Program Files/ArangoDB
2.6.2/var/lib/arangodb-apps/_db/_system/exameFacil/APP/controllers/clinics.js]
at [object Object].Module.run (C:\Program Files\ArangoDB
2.6.2\bin../share/arangodb/js/common/bootstrap/modules.js:1420:20) at ArangoApp.loadAppScript (c:/Program Files/ArangoDB
2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/arangoApp.js:452:24)
at mountController (c:/Program Files/ArangoDB
2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/routing.js:661:7)
at c:/Program Files/ArangoDB
2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/routing.js:630:9
at Array.forEach (native) at routeApp (c:/Program Files/ArangoDB
2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/routing.js:629:32)
at Object.routes (c:/Program Files/ArangoDB
2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/manager.js:268:10)
at foxxRouting (c:/Program Files/ArangoDB
2.6.2/share/arangodb/js/server/modules/org/arangodb/actions.js:1054:74)
at execute (c:/Program Files/ArangoDB
2.6.2/share/arangodb/js/server/modules/org/arangodb/actions.js:1308:7) at Object.routeRequest (c:/Program Files/ArangoDB
2.6.2/share/arangodb/js/server/modules/org/arangodb/actions.js:1329:3) at Function.actions.defineHttp.callback (c:\Program Files\ArangoDB
2.6.2\share\arangodb\js\actions\api-system.js:58:15)
每当我尝试 'require' clinics.js 文件时都会出现此错误。有什么建议么?谢谢!
你能试试换行吗
exports.repository = ClinicsRepository;
到
module.exports = ClinicsRepository;
然后错误应该消失了。
除此之外,AQL 查询中的过滤器可能需要从
更改
FILTER clinic._key == [@id]
到
FILTER clinic._key == @id
或
FILTER clinic._key IN @id
实际查找文档,具体取决于您是要查找单个文档还是文档数组。
我正在 ArangoDB 中的 FOXX 应用程序的存储库中尝试自定义查询:
/*clinics.js */
'use strict';
var Foxx = require('org/arangodb/foxx');
var ClinicsRepository = Foxx.Repository.extend({
// Add your custom methods here
//Returns all procedures from a clinic, given the clinic id
getAllProcedures: Foxx.createQuery({
query: 'FOR clinic IN exameFacil_clinics FILTER clinic._key == [@id] RETURN clinic.procedures',
params: ['id']
})
});
exports.repository = ClinicsRepository;
I did this following the Foxx cookbook, but it always gives me an error:
[ArangoError 3103: failed to invoke module File: c:/Program Files/ArangoDB 2.6.2/var/lib/arangodb-apps/_db/_system/exameFacil/APP/controllers/clinics.js]
[ArangoError 3103: failed to invoke module File: c:/Program Files/ArangoDB 2.6.2/var/lib/arangodb-apps/_db/_system/exameFacil/APP/controllers/clinics.js] at [object Object].Module.run (C:\Program Files\ArangoDB 2.6.2\bin../share/arangodb/js/common/bootstrap/modules.js:1420:20) at ArangoApp.loadAppScript (c:/Program Files/ArangoDB 2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/arangoApp.js:452:24) at mountController (c:/Program Files/ArangoDB 2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/routing.js:661:7) at c:/Program Files/ArangoDB 2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/routing.js:630:9 at Array.forEach (native) at routeApp (c:/Program Files/ArangoDB 2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/routing.js:629:32) at Object.routes (c:/Program Files/ArangoDB 2.6.2/share/arangodb/js/server/modules/org/arangodb/foxx/manager.js:268:10) at foxxRouting (c:/Program Files/ArangoDB 2.6.2/share/arangodb/js/server/modules/org/arangodb/actions.js:1054:74) at execute (c:/Program Files/ArangoDB 2.6.2/share/arangodb/js/server/modules/org/arangodb/actions.js:1308:7) at Object.routeRequest (c:/Program Files/ArangoDB 2.6.2/share/arangodb/js/server/modules/org/arangodb/actions.js:1329:3) at Function.actions.defineHttp.callback (c:\Program Files\ArangoDB 2.6.2\share\arangodb\js\actions\api-system.js:58:15)
每当我尝试 'require' clinics.js 文件时都会出现此错误。有什么建议么?谢谢!
你能试试换行吗
exports.repository = ClinicsRepository;
到
module.exports = ClinicsRepository;
然后错误应该消失了。
除此之外,AQL 查询中的过滤器可能需要从
更改FILTER clinic._key == [@id]
到
FILTER clinic._key == @id
或
FILTER clinic._key IN @id
实际查找文档,具体取决于您是要查找单个文档还是文档数组。