Progressing
This commit is contained in:
parent
da73d0cf42
commit
16ceff2f15
2
.gitignore
vendored
2
.gitignore
vendored
@ -1 +1,3 @@
|
||||
node_modules/
|
||||
*.sqlite
|
||||
|
||||
|
||||
3
.vscode/launch.json
vendored
3
.vscode/launch.json
vendored
@ -11,7 +11,8 @@
|
||||
"skipFiles": [
|
||||
"<node_internals>/**"
|
||||
],
|
||||
"program": "${workspaceFolder}/server.js"
|
||||
"program": "${workspaceFolder}/server.js",
|
||||
"cwd": "${workspaceFolder}",
|
||||
}
|
||||
]
|
||||
}
|
||||
8
db.js
Normal file
8
db.js
Normal file
@ -0,0 +1,8 @@
|
||||
import { Sequelize } from "sequelize";
|
||||
|
||||
const sequelize = new Sequelize({
|
||||
dialect: "sqlite",
|
||||
storage: "./db.sqlite"
|
||||
});
|
||||
|
||||
export default sequelize;
|
||||
1674
package-lock.json
generated
1674
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -9,7 +9,10 @@
|
||||
"license": "ISC",
|
||||
"description": "",
|
||||
"dependencies": {
|
||||
"fastify": "^5.1.0"
|
||||
"fastify": "^5.1.0",
|
||||
"fastify-plugin": "^5.0.1",
|
||||
"sequelize": "^6.37.5",
|
||||
"sqlite3": "^5.1.7"
|
||||
},
|
||||
"type": "module"
|
||||
}
|
||||
|
||||
18
plugins/sequelize.js
Normal file
18
plugins/sequelize.js
Normal file
@ -0,0 +1,18 @@
|
||||
import fp from "fastify-plugin";
|
||||
import sequelize from "../db.js";
|
||||
|
||||
async function sequelizePlugin(fastify, opts) {
|
||||
try {
|
||||
await sequelize.authenticate();
|
||||
console.log('Database connection established successfully.');
|
||||
fastify.decorate('sequelize', sequelize);
|
||||
fastify.addHook('onClose', async (fastifyInstance) => {
|
||||
await fastifyInstance.sequelize.close();
|
||||
});
|
||||
} catch (err) {
|
||||
fastify.log.error(err)
|
||||
process.exit(1)
|
||||
}
|
||||
}
|
||||
|
||||
export default fp(sequelizePlugin);
|
||||
@ -1,8 +1,11 @@
|
||||
import Fastify from "fastify";
|
||||
import sequelizePlugin from "./plugins/sequelize.js";
|
||||
|
||||
const server = Fastify({ logger: true });
|
||||
server.register(sequelizePlugin);
|
||||
|
||||
server.get("/", async (request, reply) => {
|
||||
const [results, metadata] = await server.sequelize.query('SELECT 1 + 1 AS result');
|
||||
return { hello: "world" };
|
||||
});
|
||||
|
||||
@ -11,4 +14,4 @@ try {
|
||||
} catch (err) {
|
||||
server.log.error(err)
|
||||
process.exit(1)
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user