我正在尝试将SQL Server与Nuxt应用程序一起使用,并将一些基本的CRUD功能与表结合在一起。有人对此有任何见识或例子吗?我了解(我认为)对数据库的调用将在api文件夹中公开并注册为serverMiddleware。任何例子将不胜感激!我目前正在使用node-mssql软件包,因为它似乎是最受欢迎的选择。
我建议,使用真正的ORM库代替代理库,该ORM库将允许您实际创建模型,并且CRUD操作将比维护所有查询容易得多,而不是编写所有查询
[一个公共库是Sequelize,您可以轻松地从类似的东西开始
在nuxt.config.js
中,将您的serverMiddleware
指向一个全新的文件夹,例如/api
module.exports = {
// ...
serverMiddleware: ['~/api/index.js'],
env: {
DB_HOST: process.env.DB_HOST || 'db-host',
DB_DATABASE: process.env.DB_DATABASE || 'db-database',
DB_USER: process.env.DB_USER || 'db-user',
DB_PASS: process.env.DB_PASS || 'db-pass'
},
// ...
}
并像在创建REST API一样开始在此处创建快速/顺序调用
使用您想要的MS SQL来使您拥有大量的dialects to choose from,只需安装tedious
软件包并正确配置它
const Sequelize = require('sequelize');
const sequelize = new Sequelize(DB_DATABASE, DB_USER, DB_PASS, {
host: DB_HOST,
dialect: 'mssql',
logging: process.env.NODE_ENV !== 'production' ? console.log : false, // eslint-disable-line no-console
pool: {
max: 5,
min: 0,
idle: 10000,
},
define: {
engine: 'InnoDB',
collate: 'latin1_swedish_ci',
},
dialectOptions: {
// stream: proxyConnection,
options: {
encrypt: true,
requestTimeout: 300000,
enableArithAbort: false,
},
},
});
初始设置后,只需创建your own Models并使用它们