Meteor学习路程(三)之数据库的例子(1)【查询】

接下来会用Meteor的几种方式展示出数据:

第一步:命令行新建工程

meteor create dbTest
.......
cd dbTest
.......
meteor npm install
.......
meteor
第二步:

第一种方式:模拟数据

在client文件夹下新建template文件夹并且建立一个模板和helper文件:users.html、users.js

(1)创建用户列表模板users.html

<!--定义users模板-->
<template name="users">
    <ul>
        <!--循环处理users数组-->
        {{#each users}}
            <!--显示每条数据中的name和age-->
            <li>name:{{name}},age:{{age}}</li>
        {{/each}}
    </ul>
</template>
(2)建立helper文件
Template.users.helpers({
    users:function () {
    //返回静态数据
    return[
            {name:'name1',age:20},
            {name:'name2',age:20}
   ];
   }
});

(3)修改main.html显示,让它调用users.html模板

<head>
  <title>dbTest</title>
</head>
<body>
  <h1>数据展示方式</h1>
  <h3>1.模拟数据</h3>
  {{> users}}
</body>

(4)此时就可以在浏览器(http://localhost:3000)中查看到静态模拟数据的用户列表了


第二种方式:数据库数据

(1)在项目运行的那个命令窗口不要关闭的前提下,再开一个窗口在项目(dbTest)根目录下运行meteor mongo

(2)再在mongodb中插入两条数据,方便后期调用,再检查一下里面的数据是否插入成功

db.tests.insert({name:'name3',age:20});
db.tests.insert({name:'name3',age:20});
......
db.tests.find();


解析:_id是必要非空元素,由mongodb自动填充。很奇怪为什么没有建立集合tests就可以直接插入数据了吧?这是因为数据库和集合可以在插入数据的同时进行创建。

MongoDB数据库命令操作:

(3)接着在项目根目录下创建一个lib目录,在其中再创建一个collection目录,并且在这个目录下再创建TestsUsers.js关联数据库

TestsUsers = new Mongo.Collection('tests');
(4)接下来为了与上面静态数据有个对比,新增main.html里面的显示
<h3>2.数据库数据</h3>
{{> testsusers}}
(5)再在template文件下创建testsusers.html和testsusers.js

testsusers.html

<template name="testsusers">
    <ul>
        <!--循环处理testsusers数组-->
        {{#each testsusers}}
            <!--显示每条数据中的name和age-->
            <li>name:{{name}},age:{{age}}</li>
        {{/each}}
    </ul>
</template>
testsusers.js
Template.testsusers.helpers({
    testsusers:function () {
        //返回数据库数据
        return TestsUsers.find();
    }
});
(6)这样大功告成了,在浏览器中即可看到

本来准备贴入源码的,但是上限是60M,因此如果大家有需要请私信我。

参考文献主要是来源于《Meteor全栈开发》结合自身学习步骤完,以提供今后学习和方便大家学习交流。

MongoDB数据库基础知识:

a.MongoDB是一个开源的面向文档的NoSQL数据库。

b.文档是一组属性名和属性值的集合。属性值可以是简单的数据类型,也可以是一组数组,甚至是其他文档。

c.mysql和mongodb区别:

前者是关系型数据库,后者是文档型数据库。

文档中可以包含一个对象的全部内容,而关系型数据库中需要从多个表中获取;关系型数据库又固定的合适,规定了列和类型,而文档型数据库无须先定义。(例如:如果需要新增字段或修改某列类型,关系型数据库需要显式的修改表结构,而文档结构中无须预先定义属性名和属性值类型可以动态添加任何属性)

d.定义集合对象的变量名:用数据库中集合名称命名、并以大写字母开头、使用复数。

MongoDB数据库常用基本操作:

1.删除users集合:【删】

db.users.remove();
remove()方法作用是删除文档,没有参数时是删除集合中全部文档,想要删除指定文档则使用
db.users.remove({'name':'name1'});
remove()不会删除集合,只是从集合中删除文档,如果要把集合彻底删除,则需要使用drop

db.users.drop(); 
2.查看所有数据库
show dbs

3.查看有哪些集合

show collections

4.查询users数据库/集合内数据展示【查】

db.users.find();  
5.查询users数据库/集合数据条数
db.users.count();
6.插入users数据【增】
db.users.insert({name:'name1',age:20});

7.更新users数据【改】

db.users.update({'name':'name1'},{$set:{'name':'namename'}});
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值