Files
nuxt-mongoose/README.md
2023-04-28 15:40:19 +03:00

1.8 KiB

nuxt-mongoose

Nuxt Mongoose

A Nuxt module for simplifying the use of Mongoose in your project.

Installation

pnpm add nuxt-mongoose

Usage

Setup

Add nuxt-mongoose to the modules section of your nuxt.config.ts file.

export default defineNuxtConfig({
  modules: [
    'nuxt-mongoose',
  ],
})

Configuration

You can configure the module by adding a mongoose section to your nuxt.config file.

export default defineNuxtConfig({
  mongoose: {
    uri: 'process.env.MONGODB_URI',
    options: {},
  },
})

API

defineMongooseConnection

This function creates a new Mongoose connection. Example usage:

import { defineMongooseConnection } from '#nuxt/mongoose'

export const connection = defineMongooseConnection('mongodb://127.0.0.1/nuxt-mongoose')

defineMongooseModel

This function creates a new Mongoose model with schema. Example usage:

import { defineMongooseModel } from '#nuxt/mongoose'

export const User = defineMongooseModel('User', {
  name: {
    type: String,
    required: true,
  },
})

or you could use it like:

export const User = defineMongooseModel({
  name: 'User',
  schema: {
    name: {
      type: String,
      required: true,
    },
  },
})

useMongoose

This composable returns the Mongoose DB instance. Example usage:

<script lang="ts" setup>
const mongoose = useMongoose()
const user = await mongoose.db.collection('users').findOne()
</script>

License

MIT License