add 'FOR UPDATE' support for querySet

This commit is contained in:
hurisheng
2018-06-23 22:25:05 +08:00
parent f16688817a
commit fc2c96a177
3 changed files with 25 additions and 10 deletions

View File

@@ -55,16 +55,17 @@ func ColValue(opt operator, value interface{}) interface{} {
// real query struct
type querySet struct {
mi *modelInfo
cond *Condition
related []string
relDepth int
limit int64
offset int64
groups []string
orders []string
distinct bool
orm *orm
mi *modelInfo
cond *Condition
related []string
relDepth int
limit int64
offset int64
groups []string
orders []string
distinct bool
forupdate bool
orm *orm
}
var _ QuerySeter = new(querySet)
@@ -127,6 +128,12 @@ func (o querySet) Distinct() QuerySeter {
return &o
}
// add FOR UPDATE to SELECT
func (o querySet) ForUpdate() QuerySeter {
o.forupdate = true
return &o
}
// set relation model to query together.
// it will query relation models and assign to parent model.
func (o querySet) RelatedSel(params ...interface{}) QuerySeter {