如何判断一个集合是不是为空?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何判断一个集合是不是为空?相关的知识,希望对你有一定的参考价值。
参考技术A集合{1,2,3}和集合{1,3,2}是同一个集合。这是集合的无序性。
一个集合中,每个元素的地位都是相同的,元素之间是无序的。集合上可以定义序关系,定义了序关系后,元素之间就可以按照序关系排序。但就集合本身的特性而言,元素之间没有必然的序。
一个集合中,任何两个元素都认为是不相同的,即每个元素只能出现一次。有时需要对同一元素出现多次的情形进行刻画,可以使用多重集,其中的元素允许出现多次。
用来表达模糊性概念的集合,又称模糊集、模糊子集。普通的集合是指具有某种属性的对象的全体。这种属性所表达的概念应该是清晰的,界限分明的。因此每个对象对于集合的隶属关系也是明确的,非此即彼。
但在人们的思维中还有着许多模糊的概念,例如年轻、很大、暖和、傍晚等,这些概念所描述的对象属性不能简单地用“是”或“否”来回答,而模糊集合就是指具有某个模糊概念所描述的属性的对象的全体。
如何让猫鼬列出集合中的所有文档?判断集合是不是为空?
【中文标题】如何让猫鼬列出集合中的所有文档?判断集合是不是为空?【英文标题】:How to get Mongoose to list all documents in the collection? To tell if the collection is empty?如何让猫鼬列出集合中的所有文档?判断集合是否为空? 【发布时间】:2016-01-06 19:30:00 【问题描述】:我正在使用 MEAN 堆栈并在 Mongoose 中编写这些方法。我想知道我放在猫鼬模型文件中的内容有什么问题。我想使用 Mongoose 简单地打印出 myModel 集合中所有文档的列表。
myModel.methods.myMethod = function(cb)
this.model("Bids").find(, 'myField', function(err, results)
if (err)console.log(err);return err;
console.log("okay");
console.log(results);
)
this.save(cb);
另外,我可以在 Mongoose 中编写什么代码来判断 myModel 集合是否为空?
授人以鱼不如授人以渔……
因此,如果您能建议我可以安装哪些调试工具(例如 Express 中间件)来帮助我自己调试,那将非常有帮助。 Please post your debugging suggestions here.
【问题讨论】:
find()
的第二个参数是 String
?你确定吗?看起来很腥
我从Mongoose docs得到它
【参考方案1】:
我假设猫鼬所需的所有其他设置都是正确的。
在下面的行中,我认为不需要'myField'。
this.model("Bids").find(, 'myField', function(err, results)
这里有更多从头开始的东西,也许它会帮助你追溯你的步骤:
var mongoose = require('mongoose');
//connection to Mongodb instance running on=======
//local machine or anywhere=========================
var uri = 'mongodb://localhost:27017/test';
var connection = mongoose.createConnection(uri);
//Define Schema==================================
var Schema = mongoose.Schema;
var BlogPostSchema = new Schema(
author: type: Schema.Types.ObjectId ,
title: String,
body: String
);
//Create model===================================================
var BlogPostModel = connection.model('BlogPost', BlogPostSchema);
//function to insert doc into model NOTE "pass in your =======
//callback or do away with it if you don't need one"=========
var insertBlogPost = function (doc, callback)
//here is where or doc is converted to mongoose object
var newblogPost = new BlogPostModel(doc);
//save to db
newblogPost.save(function (err)
assert.equal(null, err);
//invoke your call back if any
callback();
console.log("saved successfully");
);
;
//function to get all BlogPosts====================================
var getAllBlogPosts = function (callback)
//mongoose get all docs. I think here answers your question directly
BlogPostModel.find(function (err, results)
assert.equal(null, err);
//invoke callback with your mongoose returned result
callback(results);
);
;
//you can add as many functions as you need.
//Put all of your methods in a single object interface
//and expose this object using module.
var BlogPostManager =
insertBlogPost: insertBlogPost,
getAllBlogPosts : getAllBlogPosts
module.exports = BlogPostManager;
【讨论】:
感谢您向我展示此代码,以便我可以检查所有内容。原来我拼错了我的模型的名字。谢谢!以上是关于如何判断一个集合是不是为空?的主要内容,如果未能解决你的问题,请参考以下文章