Add PropagatedError field

This commit is contained in:
dusan-embroker 2016-06-01 21:02:16 +02:00
parent 173a2d44a8
commit f9223721cf

View File

@ -22,6 +22,7 @@ var NowFunc = func() time.Time {
type DB struct { type DB struct {
Value interface{} Value interface{}
Error error Error error
PropagatedError error
RowsAffected int64 RowsAffected int64
callback *callback callback *callback
db sqlCommon db sqlCommon
@ -296,7 +297,7 @@ func (s *DB) Save(value interface{}) *DB {
} else { } else {
result = scope.callCallbacks(s.parent.callback.updates).db result = scope.callCallbacks(s.parent.callback.updates).db
} }
s.Error = result.Error s.PropagatedError = result.Error
return result return result
} }
@ -307,14 +308,14 @@ func (s *DB) Create(value interface{}) *DB {
func (s *DB) Delete(value interface{}, where ...interface{}) *DB { func (s *DB) Delete(value interface{}, where ...interface{}) *DB {
result := s.clone().NewScope(value).inlineCondition(where...).callCallbacks(s.parent.callback.deletes).db result := s.clone().NewScope(value).inlineCondition(where...).callCallbacks(s.parent.callback.deletes).db
s.Error = result.Error s.PropagatedError = result.Error
return result return result
} }
func (s *DB) Raw(sql string, values ...interface{}) *DB { func (s *DB) Raw(sql string, values ...interface{}) *DB {
result := s.clone().search.Raw(true).Where(sql, values...).db result := s.clone().search.Raw(true).Where(sql, values...).db
result.values["__orig"] = s result.values["__orig"] = s
s.Error = result.Error s.PropagatedError = result.Error
return result return result
} }
@ -324,7 +325,7 @@ func (s *DB) Exec(sql string, values ...interface{}) *DB {
generatedSql = strings.TrimSuffix(strings.TrimPrefix(generatedSql, "("), ")") generatedSql = strings.TrimSuffix(strings.TrimPrefix(generatedSql, "("), ")")
scope.Raw(generatedSql) scope.Raw(generatedSql)
result := scope.Exec().db result := scope.Exec().db
s.Error = result.Error s.PropagatedError = result.Error
return result return result
} }