繁体   English   中英

ArangoDB Foxx pathParam未定义

[英]ArangoDB Foxx pathParam is undefined

使用Web UI制作了一个新的Foxx应用程序,并添加了以下路线:

controller.get('/names/:name', function (request, response) {
  var name = request.params('name');

  response.json(db._query(
    "FOR x IN collection"+
      " FILTER x.name == " + name +
      " RETURN x"
    ).toArray());
})
.pathParam('name', { // line 112
  description: 'A name value to search for',
  type: 'String'
})
.errorResponse(ArangoError, 404, 'Data not found');

这给出了指向第112行的错误,并阻止了应用程序的运行:

http://puu.sh/kEx6h/5641b92739.png

如果删除.pathParam函数,则此方法运行良好。

我该如何解决/我在做什么错? 我正在使用2.6.9版(最新)进行全新安装

AFAIK .pathParam()的第二个参数中的type子属性在版本2.5中已更改为使用joi。 因此需要将其更改为:

.pathParam('name', { // line 112
  description: 'A name value to search for',
  type: joi.string() // this line needs changing
})

除此之外,您需要预先在控制器中require joi,即

var joi = require('joi');

该教程确实已经过时,需要修复。

因此,根据最新的控制器文档 ,似乎现在需要使用joi。

该错误的原因是,我正在关注不使用joi的Foxx教程

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM