1.1.0 • Published 6 years ago
@spksoft/mongoose-repository v1.1.0
mongoose-repository
A mongoose Repository based Include Plugin:
- mongoose-delete (default options: { deletedAt: true, indexFields: true, overrideMethods: true })
- mongoose-timestamps
- mongoose-paginate
install
npm install @spksoft/mongoose-repository
Usage
user.repository.js file
import RepositoryBuilder from '@spksoft/mongoose-repository'
const schemaDefinition = {
name: {
type: String,
require: true
},
foo: {
type: [Number],
require: true
}
}
export default RepositoryBuilder('Bar', schemaDefinition)
// {
// Model,
// Schema,
// Repository,
// schemaDefinition,
// default: Repository
// }
Example
find with repository
import UserRepository from './user.repository.js'
export default async function getUser() {
var filter = {
name: 'Yana'
}
var options = {
limit: 10, // limit data 10 rows
page: 1, // start 1
sort: 'username -password', // sort by "username" ascending and "password" descending
populate: 'userType'
}
return UserRepository.find(filter, options)
}
find with model
import UserRepository from './user.repository.js'
export default async function getUser() {
var filter = {
name: 'Yana'
}
var options = {
limit: 10, // limit data 10 rows
page: 1, // start 1
sort: 'username -password', // sort by "username" ascending and "password" descending
populate: 'userType'
}
return UserRepository.Model.find(filter, options)
}
get schema definition
import UserRepository from './user.repository.js'
export default async function getUserSchemaDefinition() {
return UserRepository.schemaDefinition
}
create
import UserRepository from './user.repository'
UserRepository.create({
name: 'eiei',
foo: [12, 69]
})
1.1.0
6 years ago
1.0.18
6 years ago
1.0.16
6 years ago
1.0.15
6 years ago
1.0.14
6 years ago
1.0.13
6 years ago
1.0.12
6 years ago
1.0.11
6 years ago
1.0.10
6 years ago
1.0.9
6 years ago
1.0.8
6 years ago
1.0.7
6 years ago
1.0.6
6 years ago
1.0.5
6 years ago
1.0.4
6 years ago
1.0.3
6 years ago
1.0.2
6 years ago
1.0.1
6 years ago
1.0.0
6 years ago