Mongoose
Class for working with MongoDB database and mongoose.
note
Class should be used in backend
Import
- ES5
- ES6
const { Mongoose } = require("js-ts-kit");
import { Mongoose } from "js-ts-kit";
Connecting To Database
import mongoose from "mongoose";
import { Mongoose } from "js-ts-kit";
const uri =
"mongodb+srv://username:password@cluster0.mongodb.net/mydatabase?retryWrites=true&w=majority";
const mongooseClass = new Mongoose(uri, mongoose);
async function main() {
await mongooseClass.connectToMongoDb();
}
Creating Models
import mongoose from "mongoose";
import { Mongoose } from "js-ts-kit";
const uri =
"mongodb+srv://username:password@cluster0.mongodb.net/mydatabase?retryWrites=true&w=majority";
const mongooseClass = new Mongoose(uri, mongoose);
async function main() {
await mongooseClass.connectToMongoDb();
const User = mongooseClass.createModel("user", {
name: {
type: String,
require: true,
},
dateCreated: {
type: Date,
default: Date.now,
},
});
await User.find({});
}
Reference
Create Object / Object Properties
new Mongoose(uri, mongoose)
| Name | Type | Static | Description |
|---|---|---|---|
uri | string | no | string for connecting to MongoDB database |
mongoose | no | instance from importing mongoose package |
Methods
connectToMongoDb(options)
Parameters
-
Type:
object -
Description:
objectfor options
Returns
Nothing is returned.
defineSchema(json)
Parameters
-
Type:
object -
Description:
objectforSchema
Returns
-
Type:
Schema -
Description: Schema for model
createModel(name, schema)
Parameters
| Name | Type | Description |
|---|---|---|
name | string | name of collection for MongoDB |
schema | object or Schema | Model's properties |
Returns
-
Type:
Model -
Description: Model representing collection in MongoDB