我们有一个具有MySQL数据库的旧版应用程序。它的后端目前是用PHP编写的。
我们现在正在改造后端,并在node.js中构建后端。技术团队已决定使用sails.js作为构建此后端的框架。
默认情况下,Sails.js使用水线(ORM)。
我们想要的是能够连接到旧版MySQL数据库,并在Sails应用程序中删除orm支持。
初始化新的Sails应用程序时,我通过了一个without
选项以选择退出应用程序中的orm。
现在,我对于应该在何处(以及如何)连接到旧版MySQL数据库并使该连接对我们将拥有的所有控制器/动作文件可用感到困惑。
我是否仍然必须使用sails-mysql,还是应该使用任何其他有助于我连接到数据库的适配器?该代码应该放在哪里?在辅助方法中?
任何帮助将不胜感激!
答案 0 :(得分:1)
如果使用--without orm
创建了应用程序,则基本上禁用了Waterline / Sails提供的任何ORM /模型/数据库功能。这意味着,您不能使用Sails中记录的模型概念。
您始终可以使用其他方法,就像在其他任何node.js项目中一样。需要模块,并遵循其文档。检查http://docs.sequelizejs.com/中可用的众多选项之一。
关于使用sails-mysql,这只是Watermark的“适配器”,告诉您的连接要使用“ mysql”。但这仅在您在应用程序中配置了ORM时可用。
如果要在没有ORM的情况下开发应用程序,则需要创建“服务”,然后在控制器中调用。也就是说,在/api/services
中构建业务逻辑(如果不存在则创建文件夹),然后在那里开发解决方案。最后,从您的控制器调用它们。您可以查看我的其他答案here作为示例