Nodejs 应用程序 Sequelize 入门

Nodejs 应用程序 Sequelize 入门

原文:https://medium.com/hackernoon/getting-started-with-sequelize-for-nodejs-applications-2854c58ffb8c

ORM 简介

ORM 或对象关系映射是对象和关系数据库系统之间的映射过程。ORM 就像两个系统之间的接口。ORM 为开发人员提供了一些基本的优势,比如节省时间和精力,更注重业务逻辑。代码是健壮的而不是冗余的。ORM 有助于以有效的方式管理对多个表的查询。最后,ORM(像 sequelize )能够连接不同的数据库(当从一个数据库切换到另一个数据库时,这很方便)。

Sequelize 入门

Sequelize 是 Node.js 的一个基于 promise 的 ORM。Sequelize 很容易学习,有几十个很酷的特性,比如同步、关联、验证等等。它还支持 PostgreSQL、MySQL、MariaDB、SQLite 和 MSSQL。我假设您的机器上已经启动了某种形式的 SQL 数据库服务。我目前正在使用 MySQL。

装置

Sequelize 可通过 npm 获得。

建立连接

Sequelize 确实在 rest API/应用程序和您的 SQL 数据库之间建立了一个连接。要设置两者之间的基本连接:

我如何设置我的序列连接?

为了简洁起见,我喜欢将代码分成模块。毕竟, 一个程序/模块应该做一件事 的 Unix 哲学是如今用 JavaScript 编写代码(并使用 Node.js 作为服务器端平台)背后的哲学的主要部分。

我从我的应用程序/api 文件夹的根目录中的config.json / config.js文件开始,在该文件夹中,我定义了设置与数据库的连接所需的一般约束:

如果你喜欢遵循这种模式,你可以在你的.env文件中这样做。有关这方面的更多信息,请参见[dotenv](https://www.npmjs.com/package/dotenv)

在定义了配置变量之后,在我的models/文件夹中或者我在应用程序级定义数据库中的表模式的地方,我在一个index.js文件中创建连接:

注意到我公开了包含每个模型/表模式定义的db对象是很重要的。从现在开始,我只需导入db对象,使用它对特定的数据库表进行操作。

该设置可以在 Sequelize CLI 工具的帮助下自动生成,该工具有助于以有效的方式引导新项目(如上所述),并直接从终端处理数据库迁移。

结论

Sequelize 是一个功能丰富的 ORM for Node.js。它有一个文档,有时可能不会为您的问题提供直接的解决方案,但总是有 Github 的问题。我喜欢的是它基于承诺的控制流。来自 NoSQL 背景(并使用 MongoDB),理解 Sequelize 真的花了更少的时间。大多数基于查询的模型与 MongoDB 中的非常相似(尤其是 CRUD 操作)。我正在寻找一个更明亮,更完善的文档和 Sequelize 的支持容易。

想收到更多像这样的文章吗?订阅我 这里 。有时,我会向我的订户发送“从未见过”的内容。

感谢阅读。如果你觉得这篇文章有用,请点击 💚 按钮,这样这个故事就能接触到更多的读者。如果你想谈论更多,请在Twitter上 ping 我。

黑客中午是黑客如何开始他们的下午。我们是 @AMI 家庭的一员。我们现在接受投稿并乐意讨论广告&赞助机会。

如果你喜欢这个故事,我们推荐你阅读我们的最新科技故事趋势科技故事。直到下一次,不要把世界的现实想当然!


本站为非盈利网站,作品由网友提供上传,如无意中有侵犯您的版权,请联系删除