在本教程中,我们将学习如何使用 MongoDB集合。
创建集合
我们可以使用以下代码来创建一个新的集合-

meteorApp/client/main.js

MyCollection = new Mongo.Collection('myCollection');

添加数据

当集合被创建以后,我们可以通过使用 insert() 方法添加数据。

meteorApp/client/main.js

MyCollection = new Mongo.Collection('myCollection');

var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
} MyCollection.insert(myData);

查找数据

我们可以使用 find 方法来搜索集合中的数据。

meteorApp/client/main.js

MyCollection = new Mongo.Collection('myCollection');

var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
} MyCollection.insert(myData); var findCollection = MyCollection.find().fetch();
console.log(findCollection);
控制台将在插入之前显示数据。

我们可以通过搜索参数得到同样的结果。

meteorApp/client/main.js

MyCollection = new Mongo.Collection('myCollection');

var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
} MyCollection.insert(myData); var findCollection = MyCollection.find({key1: "value 1..."}).fetch();
console.log(findCollection);

更新数据

下一个步骤是更新我们的数据。我们创建了收集并插入新的数据后,就可以使用 update() 方法。

meteorApp/client/main.js

MyCollection = new Mongo.Collection('myCollection');

var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
} MyCollection.insert(myData); var findCollection = MyCollection.find().fetch();
var myId = findCollection[0]._id; var updatedData = {
key1: "updated value 1...",
key2: "updated value 2...",
key3: "updated value 3...",
key4: "updated value 4...",
key5: "updated value 5..."
} MyCollection.update(myId, updatedData); var findUpdatedCollection = MyCollection.find().fetch();
console.log(findUpdatedCollection);
控制台将显示被我们更新的集合。

删除数据

要从集合中删除数据可以通过remove()方法来完成。我们在这个例子设置ID作为参数来删除特定数据。

meteorApp/client/main.js

MyCollection = new Mongo.Collection('myCollection');

var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
} MyCollection.insert(myData); var findCollection = MyCollection.find().fetch();
var myId = findCollection[0]._id; MyCollection.remove(myId); var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);
控制台将显示空数组。

如果我们想从集合删除一切,可以用同样的方法,但不是ID,这里使用空对象{}. 出于服务器安全原因我们需要做这个。

meteorApp/client/main.js

if (Meteor.isServer) {

   MyCollection = new Mongo.Collection('myCollection');

   var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
} MyCollection.insert(myData);
MyCollection.remove({}); var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);

我们还可以通过使用其它的参数来删除数据。 如在前面的例子中,Meteor将强制我们在服务器上这样做。

meteorApp/client/main.js

if (Meteor.isServer) {

   MyCollection = new Mongo.Collection('myCollection');

   var myData = {
key1: "value 1...",
key2: "value 2...",
key3: "value 3...",
key4: "value 4...",
key5: "value 5..."
} MyCollection.insert(myData);
MyCollection.remove({key1: "value 1..."}); var findDeletedCollection = MyCollection.find().fetch();
console.log(findDeletedCollection);
}
你可以看到,在命令窗口中删除的数据。

Meteor集合的更多相关文章

  1. Nodejs----学习路线

    一:javascript基础 1.语法 2.数据类型 3.操作符 4.语句 5.函数 6.变量 7.Object 类型 8.基本包装类型 9.Global 对象 10.Math 对象 11.初始化和检 ...

  2. 【译】Meteor 新手教程:在排行榜上添加新特性

    原文:http://danneu.com/posts/6-meteor-tutorial-for-fellow-noobs-adding-features-to-the-leaderboard-dem ...

  3. 干货!IT小伙伴们实用的网站及工具大集合!持续更新!

    1.Git 还在担心自己辛辛苦苦写的代码被误删了吗?还在担心自己改错了代码不能挽回吗?还在苦恼于多人开发合作找不到一个好的工具吗?那么用Git就对 了,Git是一个开源的分布式版本控制系统,用以有效. ...

  4. 最实用的IT类网站及工具大集合[转]

    1.聚合数据 大家在开发过程中,可能会用到各种各样的数据,想找一些接口来提供一些数据.比如天气预报查询,火车时刻表查询,彩票查询,身份证查询等等.有了这个接口,直接调用即可.各种各样的API接口满足你 ...

  5. 【转】最实用的IT类网站及工具大集合

    转自:http://www.cnblogs.com/annie00/p/5753507.html 1.聚合数据 大家在开发过程中,可能会用到各种各样的数据,想找一些接口来提供一些数据.比如天气预报查询 ...

  6. Meteor 之 数据的发布于订阅(Publish and subscribe )

    发布和订阅 发布(Publication)和订阅(Subscription)是 Meteor 的最基本最重要的概念之一,但是如果你是刚刚开始接触 Meteor 的话,也是有些难度的. 这已经导致不少误 ...

  7. meteor中分页库alethes:pages用法汇总

    1.添加分页库: meteor add alethes:pages 2.新建分页: Pages = new Meteor.Pagination("collection-name") ...

  8. 【转换模型+扫描线】【UVA1398】Meteor

    The famous Korean internet company nhn has provided an internet-based photo service which allows The ...

  9. Meteor入门

    转载Meteor入门介绍   Meteor是什么 基于nodejs的实时web APP开发框架. Meteor能带来什么 简单的说,你可以用js搞定客户端.服务端的开发.另外,客户端.服务端的界限被极 ...

随机推荐

  1. 用python+pygame写贪吃蛇小游戏

    因为python语法简单好上手,前两天在想能不能用python写个小游戏出来,就上网搜了一下发现了pygame这个写2D游戏的库.了解了两天再参考了一些资料就开始写贪吃蛇这个小游戏. 毕竟最开始的练手 ...

  2. ElasticSearch数据库同步插件logstash

    1.下载和elasticsearch 相同版本的logstash. 2.进行解压后,进入bin下,新建一个文件mysql.conf,并输入 input { stdin{ }} output { std ...

  3. uva1412 Fund Management

    状压dp 要再看看  例题9-17 /* // UVa1412 Fund Management // 本程序会超时,只是用来示范用编码/解码的方法编写复杂状态动态规划的方法 // Rujia Liu ...

  4. New Arrival MB SD Connect Compact 5 (MB SD C4) Star Diagnosis

    MB SD Connect Compact 5 has same function as SD C4 but with new design, support both cars and trucks ...

  5. vs2008控件查看器

    使用 OLE/COM 对象查看器 通过读取控件的类型库,OLE/COM 对象查看器使您得以查看控件的接口. 使用 OLE/COM 对象查看器 单击“工具”菜单上的“OLE/COM 对象查看器”或在命令 ...

  6. 微信小程序---目录结构

    (1)目录结构 小程序包含一个描述整体程序的 app 和多个描述各自页面的 page.一个小程序主体部分由三个文件组成,必须放在项目的根目录,如下: (2)允许上传的文件 .

  7. Caused by: java.lang.ClassNotFoundException: Cannot find class: User

    源代码: <select id="selectAll" resultType="User"> select user_id uid,user_nam ...

  8. treeTable的使用(ajax异步获取数据,动态渲染treeTable)

    一.展示效果(treetable基本样式https://www.cnblogs.com/shuihanxiao/p/10413454.html) 二.html文件(若一个页面又多个treetable, ...

  9. C/C++连接MySQL数据库执行查询

    1. 简介: 使用C/C++连接MySQL数据库执行增删改查操作,基本就是围绕以下两个文件展开: mysql.h(此头文件一般在MySQL的include文件夹内,如 D:\MySQL\mysql-5 ...

  10. springmvc请求小例子

    1.welcome.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" ...