From d3403e488eddc0cd1792e45b2122d39e733e04aa Mon Sep 17 00:00:00 2001 From: Jinzhu Date: Sat, 8 Oct 2022 16:19:02 +0800 Subject: [PATCH] Allow disable returning from dialector config, close #88 --- postgres.go | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/postgres.go b/postgres.go index 1ebabce..41e1070 100644 --- a/postgres.go +++ b/postgres.go @@ -45,11 +45,13 @@ var timeZoneMatcher = regexp.MustCompile("(time_zone|TimeZone)=(.*?)($|&| )") func (dialector Dialector) Initialize(db *gorm.DB) (err error) { // register callbacks - callbacks.RegisterDefaultCallbacks(db, &callbacks.Config{ - CreateClauses: []string{"INSERT", "VALUES", "ON CONFLICT", "RETURNING"}, - UpdateClauses: []string{"UPDATE", "SET", "WHERE", "RETURNING"}, - DeleteClauses: []string{"DELETE", "FROM", "WHERE", "RETURNING"}, - }) + if !dialector.WithoutReturning { + callbacks.RegisterDefaultCallbacks(db, &callbacks.Config{ + CreateClauses: []string{"INSERT", "VALUES", "ON CONFLICT", "RETURNING"}, + UpdateClauses: []string{"UPDATE", "SET", "WHERE", "RETURNING"}, + DeleteClauses: []string{"DELETE", "FROM", "WHERE", "RETURNING"}, + }) + } if dialector.Conn != nil { db.ConnPool = dialector.Conn