如何使用mongoosejs进行findAll?

时间:2012-11-19 20:02:18

标签: node.js mongodb mongoose

这是我的LinkSchema:

var LinkSchema = new Schema({

  user: ObjectId,

  text: {
      type: String,
      validate: [required,"Text is required"],
      index: {unique: true}
    },
    body: {
        type: String,
        validate: [required, 'Body is required'],
        index: { unique: true }
    },
    createdAt: {
        type: Date,
        'default': Date.now
    }
});

这是我的getLink:

LinkSchema.statics.getLink = function(apiKey,fn){

    var query = link.find('link.user.apiKey': apiKey);

    query.exec(function (err, links) {
      if (err) return handleError(err);
        res.send(items);

    });
}

错误:

Unexpected Token':'  -> var query = link.find('link.user.apiKey': apiKey);

我想我正在做mongoosejs的find()错误。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

你可以这样做:

var Link = db.model('Link', LinkSchema);
Link.find({}, function(err, results) {
    // res.send(results); for example.
});

find函数的第一个参数是查询。例如,如果您要搜索body等于blablabla的所有链接:

Link.find({body: 'blablabla'}, function(err, results) {
    // res.send(results); for example.
});