improved Asc & Desc

This commit is contained in:
Lunny Xiao 2013-09-02 10:06:32 +08:00
parent 1d1c7c9add
commit 4ea5fd2791
2 changed files with 10 additions and 8 deletions

View File

@ -179,16 +179,16 @@ func (engine *Engine) Limit(limit int, start ...int) *Session {
return session.Limit(limit, start...)
}
func (engine *Engine) Desc(colName string) *Session {
func (engine *Engine) Desc(colNames ...string) *Session {
session := engine.NewSession()
session.IsAutoClose = true
return session.Desc(colName)
return session.Desc(colNames...)
}
func (engine *Engine) Asc(colName string) *Session {
func (engine *Engine) Asc(colNames ...string) *Session {
session := engine.NewSession()
session.IsAutoClose = true
return session.Asc(colName)
return session.Asc(colNames...)
}
func (engine *Engine) OrderBy(order string) *Session {

View File

@ -85,19 +85,21 @@ func (session *Session) OrderBy(order string) *Session {
return session
}
func (session *Session) Desc(colName string) *Session {
func (session *Session) Desc(colNames ...string) *Session {
if session.Statement.OrderStr != "" {
session.Statement.OrderStr += ", "
}
session.Statement.OrderStr += colName + " desc"
sql := strings.Join(colNames, " desc, ")
session.Statement.OrderStr += sql + " desc"
return session
}
func (session *Session) Asc(colName string) *Session {
func (session *Session) Asc(colNames ...string) *Session {
if session.Statement.OrderStr != "" {
session.Statement.OrderStr += ", "
}
session.Statement.OrderStr += colName + " asc"
sql := strings.Join(colNames, " asc, ")
session.Statement.OrderStr += sql + " asc"
return session
}