You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

36 lines
835 B

import db from "../index.js"
class UserModel {
static async findAll() {
return db("users").select("*")
}
static async findById(id) {
return db("users").where("id", id).first()
}
static async create(data) {
return db("users").insert({
...data,
updated_at: db.fn.now(),
}).returning("*")
}
static async update(id, data) {
return db("users").where("id", id).update(data).returning("*")
}
static async delete(id) {
return db("users").where("id", id).del()
}
static async findByUsername(username) {
return db("users").where("username", username).first()
}
static async findByEmail(email) {
return db("users").where("email", email).first()
}
}
export default UserModel
export { UserModel }