我正在尝试使用 mongoose 和 express 获取现有的用户文档,但我只得到这个:
/webroot/api.domain.com/production/node_modules/mongoose/lib/document.js:162
if (obj && '_id' in obj) continue;
^
TypeError: Cannot use 'in' operator to search for '_id' in Account
at model.Document._buildDoc (/webroot/api.domain.com/production/node_modules/mongoose/lib/document.js:162:27)
at model.Document (/webroot/api.domain.com/production/node_modules/mongoose/lib/document.js:67:20)
at model.Model (/webroot/api.domain.com/production/node_modules/mongoose/lib/model.js:33:12)
at new model (/webroot/api.domain.com/production/node_modules/mongoose/lib/model.js:1663:11)
at Object.model (/webroot/api.domain.com/production/node_modules/mongoose/lib/model.js:1662:14)
at Object.findOrCreateOneForTwitter (/webroot/api.domain.com/production/models/account.coffee:60:17)
at module.exports.callback.error (/webroot/api.domain.com/production/endpoints/twitter.coffee:67:34)
at Twitter.get (/webroot/api.domain.com/production/node_modules/ntwitter/lib/twitter.js:85:7)
at passBackControl (/webroot/api.domain.com/production/node_modules/oauth/lib/oauth.js:361:11)
at IncomingMessage.exports.OAuth._performSecureRequest.request.on.callbackCalled (/webroot/api.domain.com/production/node_modules/oauth/lib/oauth.js:380:9)
是否有任何已知的修复方法?谢谢。
最佳答案
这个错误不是 Mongoose 特有的;它会显示 obj
是否不是一个对象,而是一个字符串,例如:
var obj = 'Account';
'id' in obj;
// TypeError: Cannot use 'in' operator to search for 'id' in Account
假设这不是 Mongoose 问题,您会在此处查找:
at Object.findOrCreateOneForTwitter
(/webroot/api.domain.com/production/models/account.coffee:60:17)
关于javascript - 无法使用 'in' 运算符在中搜索 '_id',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14617367/