所以在节点中我有这个代码,这完全是微不足道的......但它没有用。
var collection = db.get('fisforfriends');
var db = monk('localholst:27017/fisforfriends');
...
var userName = req.body.username;
以上作品适合插入。只是向你们展示=)!
console.log(collection.find({}, {username: userName}));
打印出我底部的大量文字。
该元素在数据库中不存在,但我添加元素的功能在前几天工作,所以我并不担心。如果它不存在,该函数会添加它。
我所拥有的只是打印所有内容的console.log调用。我希望它只是打印'假'或其他东西。
9 Dec 22:54:27 - [nodemon] starting `node app.js`
Express server listening on port 3000
GET / 200 319ms - 427b
GET /stylesheets/style.css 304 4ms
{ col:
{ manager:
{ driver: [Object],
collections: [Object],
options: [Object],
_events: {} },
driver:
{ emitter: [Object],
state: 0,
_dbconn: [Object],
db: null,
username: '',
password: undefined,
admin: [Object],
_collections: [Object],
bson_serializer: [Object],
ObjectID: [Object] },
name: 'fisforfriends',
col:
{ emitter: [Object],
state: 0,
options: undefined,
skinDb: [Object],
ObjectID: [Object],
collectionName: 'fisforfriends',
collection: null,
internalHint: null,
hint: [Getter/Setter] },
options: {} },
type: 'find',
completed: false,
opts: { username: 'fa', fields: {}, safe: true },
_events:
{ error: { [Function: g] listener: [Function] },
success: { [Function: g] listener: [Function] } },
fulfill: [Function],
query: {} }
9 Dec 22:54:45 - [nodemon] restarting due to changes...
9 Dec 22:54:45 - [nodemon] C:\Users\hassan\Documents\Hassans_Bravery\fisforfrien
ds\routes\index.js
答案 0 :(得分:1)
正如我上面所建议的,这不是数据库中的对象,这是在完成执行时将返回对象的承诺
数据库调用几乎总是异步的,尤其是在事件驱动的node.js的情况下。这意味着它需要时间,但您的console.log
立即执行。结果不会在那里。
如果我查看文档,第二个参数是你传递的回调函数,它将从查询中检索对象
所以你可以做到
users.find({}).on('success', function (doc) { /* doc is the result available here */ });
或
users.find({}, function (err, docs){ /* doc is the result available here */ });