# HG changeset patch # User Christophe de Vienne <christophe@cdevienne.info> # Date 1741355968 -3600 # Fri Mar 07 14:59:28 2025 +0100 # Node ID 78612aa201f250eae966b1147756d9725c332df2 # Parent c7bf1f08085e4766f37236db8c879700eb2a319d template-varlist: fix missing template error diff --git a/HISTORY.rst b/HISTORY.rst --- a/HISTORY.rst +++ b/HISTORY.rst @@ -1,6 +1,8 @@ Release history =============== +- template-varlist: fix error handling + 0.8.0 (2024-12-09) ================== diff --git a/restapi/handlers/template-varlist.go b/restapi/handlers/template-varlist.go --- a/restapi/handlers/template-varlist.go +++ b/restapi/handlers/template-varlist.go @@ -2,6 +2,7 @@ import ( "context" + "database/sql" "errors" "fmt" @@ -46,15 +47,20 @@ if template.Account != "" && template.Name != "" { templatedb := models.TemplateDB{} - sql := database.NewSQLHelper(ctx, h.db, *log) + db := database.NewSQLHelper(ctx, h.db, *log) - if err := sql.GetWhere( + if err := db.GetWhere( &templatedb, squirrel.Eq{ models.TemplateDBAccountColumn: template.Account, models.TemplateDBNameColumn: template.Name, }, ); err != nil { + if errors.Is(err, sql.ErrNoRows) { + return nil, BadRequestError(fmt.Errorf( + "no such template: %s/%s", template.Account, template.Name)) + } + return nil, err }