DB.Arg and DB.SetArg

This commit is contained in:
Craig 2018-10-28 13:08:50 +02:00
parent 742154be9a
commit 7e58dae6e7

21
main.go
View File

@ -29,6 +29,26 @@ type DB struct {
callbacks *Callback callbacks *Callback
dialect Dialect dialect Dialect
singularTable bool singularTable bool
// Arguments you can add to a db
arg interface{}
}
// SetArg allows you to set an application defined argument to
// a DB object.
func (db *DB) SetArg(i interface{}) {
db.arg = i
}
// Arg returns the application defined argument for the DB
// object.
func (db *DB) Arg() interface{} {
if nil!=db.arg {
return db.arg
}
if nil!=db.parent && db.parent!=db {
return db.parent.Arg()
}
return nil
} }
// Open initialize a new db connection, need to import driver first, e.g: // Open initialize a new db connection, need to import driver first, e.g:
@ -750,6 +770,7 @@ func (s *DB) GetErrors() []error {
func (s *DB) clone() *DB { func (s *DB) clone() *DB {
db := &DB{ db := &DB{
arg: s.arg,
db: s.db, db: s.db,
parent: s.parent, parent: s.parent,
logger: s.logger, logger: s.logger,