From e6671331cc9241e9f6118e16535db3563f1c1c92 Mon Sep 17 00:00:00 2001 From: rj1 Date: Mon, 3 Oct 2022 01:24:36 -0500 Subject: [PATCH 1/2] fixed some small typos and corrected a filepath in the documentation --- docs/content/doc/developers/guidelines-backend.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/content/doc/developers/guidelines-backend.md b/docs/content/doc/developers/guidelines-backend.md index b680d73c82ae..a4dabc2c70af 100644 --- a/docs/content/doc/developers/guidelines-backend.md +++ b/docs/content/doc/developers/guidelines-backend.md @@ -67,7 +67,7 @@ Some actions should allow for rollback when database record insertion/update/del So services must be allowed to create a database transaction. Here is some example, ```go -// servcies/repository/repo.go +// services/repository/repository.go func CreateXXXX() error {\ ctx, committer, err := db.TxContext() if err != nil { @@ -101,7 +101,7 @@ func UpdateIssue(ctx context.Context, repoID int64) error { ### Package Name For the top level package, use a plural as package name, i.e. `services`, `models`, for sub packages, use singular, -i.e. `servcies/user`, `models/repository`. +i.e. `services/user`, `models/repository`. ### Import Alias From 3094214c1a39fa86a472251449c13f28716d9562 Mon Sep 17 00:00:00 2001 From: wxiaoguang Date: Sat, 8 Oct 2022 01:34:12 +0800 Subject: [PATCH 2/2] Update guidelines-backend.md --- .../doc/developers/guidelines-backend.md | 28 ++++++++----------- 1 file changed, 12 insertions(+), 16 deletions(-) diff --git a/docs/content/doc/developers/guidelines-backend.md b/docs/content/doc/developers/guidelines-backend.md index a4dabc2c70af..913898be83db 100644 --- a/docs/content/doc/developers/guidelines-backend.md +++ b/docs/content/doc/developers/guidelines-backend.md @@ -68,21 +68,17 @@ So services must be allowed to create a database transaction. Here is some examp ```go // services/repository/repository.go -func CreateXXXX() error {\ - ctx, committer, err := db.TxContext() - if err != nil { - return err - } - defer committer.Close() - - // do something, if return err, it will rollback automatically when `committer.Close()` is invoked. - if err := issues.UpdateIssue(ctx, repoID); err != nil { - // ... - } - - // ...... - - return committer.Commit() +func CreateXXXX() error { + return db.WithTx(func(ctx context.Context) error { + e := db.GetEngine(ctx) + // do something, if err is returned, it will rollback automatically + if err := issues.UpdateIssue(ctx, repoID); err != nil { + // ... + return err + } + // ... + return nil + }) } ``` @@ -94,7 +90,7 @@ If the function will be used in the transaction, just let `context.Context` as t func UpdateIssue(ctx context.Context, repoID int64) error { e := db.GetEngine(ctx) - // ...... + // ... } ```