Library/models/user_delete.go

29 lines
424 B
Go
Raw Normal View History

2018-01-23 14:25:41 +00:00
package models
// DeleteUserByID deletes a user by its ID
func DeleteUserByID(id int64) error {
// Check if the id is 0
if id == 0 {
return ErrIDCannotBeZero{}
2018-01-23 14:25:41 +00:00
}
// Check if there is > 1 user
total, err := x.Count(User{})
if err != nil {
return err
}
if total < 2 {
return ErrCannotDeleteLastUser{}
}
2018-01-23 14:25:41 +00:00
// Delete the user
_, err = x.Id(id).Delete(&User{})
2018-01-23 14:25:41 +00:00
if err != nil {
return err
}
return err
}