Angular
next js connect database
ใน NextJs เราสามารถ connect database ได้โดยใช้ Node.js database library
ตัวอย่างเช่น ใช้ Mongoose สำหรับ MongoDB, ใช้ Sequelize สำหรับ MySQL หรือ PostgreSQL, หรือจะใช้ Knex.js สำหรับ SQL databases
ตัวอย่างโค้ด
const mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/your_db', {
useNewUrlParser: true,
useUnifiedTopology: true
});
const db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
console.log('MongoDB Connected!');
});
เราสามารถวางโค้ดส่วนนี้ใน server.js ได้เลย หรือจะแยกไปไว้เป็นไฟล์ต่างหากก็ได้
เราสามารถใช้ process.env เพื่อง่ายในการจำแนก environment
ตัวอย่างโค้ดที่ใช้ process.env
require('dotenv').config(); // this line should be at the top of your server.js file
const mongoose = require('mongoose');
const dbUrl = process.env.DB_URL;
const dbName = process.env.DB_NAME;
mongoose.connect(`${dbUrl}/${dbName}`, {
useNewUrlParser: true,
useUnifiedTopology: true
});
const db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function() {
console.log('MongoDB Connected!');
});
แล้วเราก็เก็บข้อมูลการ connect database ไว้ในแต่ละ env
DB_URL=mongodb://localhost
DB_NAME=your_db