MongoDB - ReferenceError:未定义startsWithDigit

时间:2013-01-12 06:37:03

标签: mongodb

我正在为自己和我的URL做一个侧面项目Shortener我的统计信息页面上出现错误(示例:http://xd6.co/u/ah/stats),这似乎只在链接创建一段时间后显示/累积点击次数,然后它会收到以下错误消息:

ReferenceError: startsWithDigit is not defined
    at Object.eval [as toVersionString] (eval at makeFunction (/home/xd6/node_modules/mongolian/node_modules/buffalo/lib/bson.js:380:17))
    at Object.eval [as toString] (eval at makeFunction (/home/xd6/node_modules/mongolian/node_modules/buffalo/lib/bson.js:380:17))
    at String (unknown source)
    at Writer._name (/home/xd6/node_modules/mustache/mustache.js:292:35)
    at Writer._escaped (/home/xd6/node_modules/mustache/mustache.js:296:32)
    at renderFunction (/home/xd6/node_modules/mustache/mustache.js:357:28)
    at subRenders.(anonymous function) (/home/xd6/node_modules/mustache/mustache.js:328:18)
    at Writer._section (/home/xd6/node_modules/mustache/mustache.js:240:21)
    at renderFunction (/home/xd6/node_modules/mustache/mustache.js:345:28)
    at Writer._compile.cache.(anonymous function) (/home/xd6/node_modules/mustache/mustache.js:224:16)
    at Writer.render (/home/xd6/node_modules/mustache/mustache.js:204:34)
    at Object.exports.render (/home/xd6/node_modules/mustache/mustache.js:596:20)

当我在控制台中运行mongo并执行db.urls.find()时,我得到了回应:

{ "short" : "aa", "long" : "http://xd6.co/Projects/url-shortener", "created" : "2013-01-03 7:11 UTC", "clicks" : 0, "visitors" : [ ], "subscribers" : [ ], "_id" : ObjectId("50e52f2b000000d358000002") }
{ "short" : "ab", "long" : "http://google.com", "created" : "2013-01-06 1:17 UTC", "clicks" : 0, "visitors" : [ ], "subscribers" : [ ], "_id" : ObjectId("50e8d0c2000000d358000003") }
{ "short" : "ac", "long" : "http://xd6.co/u/", "created" : "2013-01-07 5:54 UTC", "clicks" : 0, "visitors" : [ ], "subscribers" : [ ], "_id" : ObjectId("50ea6332000000435b000002") }
ReferenceError: startsWithDigit is not defined

这表明它是一个mongo错误,而且我们的代码没有错。此外,控制台中的Mongo会发出与nodejs程序本身不同的结果。它甚至没有显示确实存在的所有现有文档,例如mongo控制台输出中的“ae”不存在,但nodejs显然在某处找到了数据(http://xd6.co/u/api/ae/stats)。

它似乎只是urls集合的问题,因为我们在数据库中的其他两个集合不会返回错误。

在有人评论可能使用错误的db / collection来解释nodejs在哪里找到其他数据之前(使用XD6 DB和urls集合):

> show dbs
XD6 0.0625GB
local   (empty)
test    (empty)
> use XD6
switched to db XD6
> show collections
pages
posts
system.indexes
urls

1 个答案:

答案 0 :(得分:0)

你真的可以从干净的数据库开始并用一些代码重现吗?你有没有定义一些叫做startsWithDigit的javascript函数

相关问题