Repositories

CRUD operations with BaseRepository.

1 min readEdit this page

Define

import { BaseRepository } from '@restjs/orm'
 
class UserRepository extends BaseRepository<User> {
  constructor(db) { super(User, db) }
  async findByEmail(email: string) { return this.findOne({ email }) }
}

CRUD

const users = new UserRepository(db)
 
await users.create({ name: 'Tariq', email: 'tariq@restjs.dev' })
await users.findById(1)
await users.findByIdOrFail(1) // throws NotFoundError
await users.update(1, { name: 'Tariq Mehmood' })
await users.delete(1)
await users.paginate({ page: 1, perPage: 20 })