En el lenguaje Go, el manejo de errores es muy importante. Go anima a las personas a comprobar si hay errores después de crear cualquier método .
Manejo de errores
El manejo de errores en GORM es diferente del código idiomático de Go debido a la API encadenada de GORM, pero aún así es bastante fácil.
Si se produce algún error, GORM lo configurará en * gorm.DB
el Error
campo , que puede verificar de esta manera:
if err := db.Where("name = ?", "jinzhu").First(&user).Error; err != nil {
// error handling...
}
o
if result := db.Where("name = ?", "jinzhu").First(&user); result.Error != nil {
// error handling...
}
Error ErrRecordNotFound
Cuando los métodos Primero, Último y Tomar no pueden encontrar el registro, Gorm devolverá el error ErrRecordNotFound. Si ocurren varios errores, puede usar errores. Es para determinar si el error es ErrRecordNotFound , por ejemplo:
// 检查错误是否为 RecordNotFound
err := db.First(&user, 100).Error
errors.Is(err, gorm.ErrRecordNotFound)