我从没想过要这么说,但是本周我有很多有趣的处理(阅读:修补,操纵,玩弄)数据和数据库。
(这不是在说什么超级怪胎吗?我的意思是,谁这么说?实际上是什么样的人说他喜欢“ 管理数据 ”。真是个书呆子。)
然而,这是真的。 本周,我对学习 MongoDB和Mongoose有很多乐趣。
猫鼬是哪种动物?
这就是我们整个星期在Lambda学校学习的内容。 特别是,我们涵盖了以下主题:
- 将数据导入MongoDB数据库。
- 建模馆藏之间的关系。
- 将文档嵌入架构中。
- 通过引用(引用)将集合链接在一起。
- 在端点中填充数据。
- 查询数据。
- 创建中间件。
- 自定义验证。
本质上,MongoDB是一个数据库。 和猫鼬? 好吧,它可以通过几种技术方法进行定义:一个可用于与Mongo数据库进行交互的JavaScript框架; 对象数据建模(ODM)库,可帮助您对数据建模; 但是,对我来说最有用的是将其简单地看作是一种工具或技术,可以帮助您更有效地使用MongoDB,就像Express是一种可以更好地利用Node.js的工具或技术一样。 。
MongoDB解决的问题
如果可以使用Node.js,为什么还要使用MongoDB? 好吧,Node.js的问题在于,一旦服务器关闭,数据也会随之丢失。 因此,没有数据持久性。 使用MongoDB,即使您“杀死”服务器,数据也会持久存在。 这就是MongoDB解决的问题。
如果您想知道它的外观,请在此处(在Windows终端上运行):
文本“ [initandlisten]等待端口27017上的连接”表示您的Mongo服务器已启动并正在运行。
一旦有了它,就需要打开第二个终端来运行“ Mongo Shell”。 看起来像这样:
您现在可以从此处浏览Mongo数据库。 您只需要几个基本命令:
- show dbs( 显示数据库列表 )
- 使用<在此处插入数据库名称>( 选择特定的数据库 )
- 显示集合( 以打开数据库并列出其中的集合 )
- db。<在此处插入数据库名称> .find()。pretty()( 显示每个集合中的文档或数据 )
学习MongoDB时需要了解的第一件事
因此,当您第一次学习MongoDB时,需要学习的最重要的术语是:
- 资料库
- 馆藏
- 文件资料
文档只是集合中包含的数据(例如JSON文件),而集合又是数据库中包含的目录。
您可以通过Mongo Shell对MongoDB数据库中的数据进行CRUD操作,就像通过Postman和Compass对数据进行CRUD操作一样。 也就是说,Mongo Shell,Postman和Compass是这些超酷的工具,可帮助您在MongoDB数据库中创建,检索,更新和删除数据或文档。
邮递员看起来像这样:
指南针看起来像这样:
刚开始使用它们时,它们非常吓人,但是一旦您习惯了它们,就会很有趣。
在创建后端应用程序和测试端点时,将它们一起使用无疑是非常有用的。
冲刺挑战
顺便说一句,我很高兴我能够在今天的每周Sprint挑战赛中获得最小可行的产品。 我担心自己无法做到这一点,因为起初我一直试图围绕模型,模式,引用和数据填充的概念缠住我的头。 当我能够创建新的数据库和集合并将文档存储到其中,以及在Postman中成功测试它们时,我感到非常高兴。 诸如此类的技术性事物如何如此诱人?
***
Lambda大使计划
我已经报名参加了Lambda学校的大使计划,因为我确实无法停止谈论我的学校。 如果您有兴趣参加他们的Full Stack Web开发和软件工程课程,请访问: https : //mbsy.co/lambdaschool/37941124 。
From: https://hackernoon.com/mongodb-mongoose-and-the-fun-thing-that-is-data-911e28d8c3af