Sails.js 1.0:如何在没有Waterline的情况下连接和使用旧版MySQL数据库?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Sails.js 1.0:如何在没有Waterline的情况下连接和使用旧版MySQL数据库?相关的知识,希望对你有一定的参考价值。

我们有一个拥有mysql数据库的遗留应用程序。它的后端目前用php编写。

我们现在正在修改后端并在node.js中构建后端。技术团队决定使用sails.js作为构建此后端的框架。

默认情况下,Sails.js使用Waterline(ORM)。

我们想要的是能够连接到我们的遗留MySQL数据库并在我们的sails应用程序中删除orm支持。

在初始化新的sails应用程序时,我通过了without选项以在我的应用程序中选择退出orm。

现在,我很困惑应该在哪里(以及如何)在一个地方连接到遗留MySQL数据库,并使该连接可用于我们将拥有的所有控制器/操作文件。

我还需要使用sails-mysql,还是应该使用任何其他可以帮助我连接到数据库的适配器?这段代码应该在哪里生活?在辅助方法里面?

任何帮助,将不胜感激!

答案

如果您使用--without orm创建了应用程序,那么您基本上禁用了Waterline / Sails提供的任何ORM /模型/数据库功能。这意味着,您无法使用Sails中记录的模型概念。

您可以随时使用其他方法,就像在任何其他node.js项目中一样。需要该模块,并按照他们的文档。检查http://docs.sequelizejs.com/可用的众多选项之一。

关于使用sails-mysql,这只是Watermark的“适配器”,它告诉你的连接你要使用'mysql'。但只有在应用程序中配置了ORM时才可以使用。

如果我在没有ORM的情况下开发应用程序,我会创建“服务”,然后在控制器中调用。也就是说,在/api/services中构建您的业务逻辑(如果它不存在则创建该文件夹),然后在那里开发您的解决方案。最后从控制器中调用它们。您可以查看我的其他答案here作为示例

以上是关于Sails.js 1.0:如何在没有Waterline的情况下连接和使用旧版MySQL数据库?的主要内容,如果未能解决你的问题,请参考以下文章

如何在sails.js 中的SocketIO 握手期间修复“此套接字没有可用的有效会话”?

如何在sails.js 中启用http/2

有没有办法在sails.js 中禁用水线并使用不同的ORM?

Sails.Js - 我如何在sails.Js 中进行分页

如何在sails.js 中配置https

如何在 Sails.js 中实现连接多方