【问题标题】:Sails.js 1.0: How to connect and use legacy MySQL database without Waterline?Sails.js 1.0:如何在没有 Waterline 的情况下连接和使用旧版 MySQL 数据库?
【发布时间】:2019-07-26 20:26:27
【问题描述】:

我们有一个带有 MySQL 数据库的旧版应用。它的后端目前是用 PHP 编写的。

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

Sails.js 默认使用 Waterline (ORM)。

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

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

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

我仍然必须使用sails-mysql,还是应该使用任何其他可以帮助我连接到数据库的适配器?这段代码应该放在哪里?在辅助方法内部?

任何帮助将不胜感激!

【问题讨论】:

    标签: javascript mysql sails.js


    【解决方案1】:

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

    您总是可以使用其他方法,就像在任何其他 node.js 项目中一样。需要该模块,并遵循他们的文档。查看http://docs.sequelizejs.com/ 以获取众多可用选项之一。

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

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

    【讨论】:

      猜你喜欢
      • 2014-06-24
      • 2018-11-06
      • 2013-03-12
      • 2012-07-11
      • 1970-01-01
      • 2012-03-21
      • 1970-01-01
      • 2016-06-29
      • 1970-01-01
      相关资源
      最近更新 更多