1
0
Fork 0
forked from forgejo/forgejo

Fix error 500 on organization dashboard page (#150)

This commit is contained in:
Lunny Xiao 2016-11-12 00:40:21 +08:00 committed by GitHub
parent e2aa991e10
commit a8c6698de8
12 changed files with 190 additions and 162 deletions

View file

@ -371,7 +371,7 @@ func (session *Session) DB() *core.DB {
return session.db
}
// Cond return session's conditions
// Conds returns session query conditions
func (session *Session) Conds() builder.Cond {
return session.Statement.cond
}
@ -1119,11 +1119,12 @@ func (session *Session) Count(bean interface{}) (int64, error) {
} else {
err = session.Tx.QueryRow(sqlStr, args...).Scan(&total)
}
if err != nil {
return 0, err
if err == sql.ErrNoRows || err == nil {
return total, nil
}
return total, nil
return 0, err
}
// Sum call sum some column. bean's non-empty fields are conditions.
@ -1151,11 +1152,11 @@ func (session *Session) Sum(bean interface{}, columnName string) (float64, error
} else {
err = session.Tx.QueryRow(sqlStr, args...).Scan(&res)
}
if err != nil {
return 0, err
}
return res, nil
if err == sql.ErrNoRows || err == nil {
return res, nil
}
return 0, err
}
// Sums call sum some columns. bean's non-empty fields are conditions.
@ -1183,11 +1184,11 @@ func (session *Session) Sums(bean interface{}, columnNames ...string) ([]float64
} else {
err = session.Tx.QueryRow(sqlStr, args...).ScanSlice(&res)
}
if err != nil {
return nil, err
}
return res, nil
if err == sql.ErrNoRows || err == nil {
return res, nil
}
return nil, err
}
// SumsInt sum specify columns and return as []int64 instead of []float64
@ -1215,11 +1216,11 @@ func (session *Session) SumsInt(bean interface{}, columnNames ...string) ([]int6
} else {
err = session.Tx.QueryRow(sqlStr, args...).ScanSlice(&res)
}
if err != nil {
return nil, err
}
return res, nil
if err == sql.ErrNoRows || err == nil {
return res, nil
}
return nil, err
}
func (session *Session) noCacheFind(sliceValue reflect.Value, sqlStr string, args ...interface{}) error {
@ -1499,10 +1500,13 @@ func (session *Session) isTableEmpty(tableName string) (bool, error) {
}
var total int64
sql := fmt.Sprintf("select count(*) from %s", session.Engine.Quote(tableName))
err := session.DB().QueryRow(sql).Scan(&total)
session.saveLastSQL(sql)
sqlStr := fmt.Sprintf("select count(*) from %s", session.Engine.Quote(tableName))
err := session.DB().QueryRow(sqlStr).Scan(&total)
session.saveLastSQL(sqlStr)
if err != nil {
if err == sql.ErrNoRows {
err = nil
}
return true, err
}