Найти в Дзене
СОЗДАЮ

MongoDb + Nuxt 3. Как подключить базу Mongo к Nuxt 3?

Добрый день. В этой статье рассмотрим как подключить всеми любимую базу на Mongo к Nuxt 3. Итак, приступим. Сразу в корне нашего проекта создаем файлик .env для хранения пути к базе и названия базы с таким содержимым: DATABASE_URL="mongodb://localhost:27017"
DBNAME="newblog"
DBUSERNAME=""
DBPASSWORD=""
DBAUTHSOURCE="" Тут по строкам все понятно без разъяснений, в первой строке- путь к базе на локалхосте и вторая строка имя базы. В тесте делаю без логина и пароля к базе. Далее, в папке server в корне нашего проекта, создаем папку plugins и в ней файлик dbconnection.js, в котором будем прописывать подключение к нашей БД. В командной строке пишем команду: npm i mongoose для установки пакета mongoose для работы с нашей БД. И наполняем файл dbconnection.js таким содержимым import mongoose from 'mongoose'
export default async() => {
const config = useRuntimeConfig()
try {
const DB_OPTIONS = {
dbName: config.dbName,
user: config.user,
p

Добрый день. В этой статье рассмотрим как подключить всеми любимую базу на Mongo к Nuxt 3.

mongpDb + nuxt3
mongpDb + nuxt3

Итак, приступим.

Сразу в корне нашего проекта создаем файлик .env для хранения пути к базе и названия базы с таким содержимым:

DATABASE_URL="mongodb://localhost:27017"
DBNAME="newblog"
DBUSERNAME=""
DBPASSWORD=""
DBAUTHSOURCE=""

Тут по строкам все понятно без разъяснений, в первой строке- путь к базе на локалхосте и вторая строка имя базы. В тесте делаю без логина и пароля к базе.

Далее, в папке server в корне нашего проекта, создаем папку plugins и в ней файлик dbconnection.js, в котором будем прописывать подключение к нашей БД.

В командной строке пишем команду:

npm i mongoose

для установки пакета mongoose для работы с нашей БД.

И наполняем файл dbconnection.js таким содержимым

import mongoose from 'mongoose'

export default async() => {
const config = useRuntimeConfig()
try {
const DB_OPTIONS = {
dbName: config.dbName,
user: config.user,
pass: config.pass,
authSource: config.authSource
}
await mongoose.connect(config.dburl, DB_OPTIONS)
console.log('connected')
} catch (error) {
console.log(error)
}
}

Далее, открываем файл nuxt.config.ts из корня проекта и вставляем блок кода:

runtimeConfig: {
dburl:process.env.DATABASE_URL,
dbname:process.env.DBNAME,
user:process.env.DBUSERNAME,
pass: process.env.DBPASSWORD,
authSource: process.env.DBAUTHSOURCE,
}

Указываем нашему проекту исползовать runtimeConfig с параметрами из файла .env.

Теперь запускаем наш проект командой npm run dev и в консоли командной строки, если подключение успешно пройдено, должна появиться надпись connected.

-2

На этом все, ничего сложного. Далее создаем модель нашей коллекции на сервере и начинаем работать.