sqlboiler/cmds/templates/all.tpl
Patrick O'brien 0768a89aa6 Added helpers, select to DB interface and renames
* Added select and where helpers for the templates
  - These run at run time

* Added select to the boil DB interface
* Renamed some of the broken template names and fixed some templates
2016-03-16 17:04:26 +10:00

28 lines
792 B
Smarty

{{- $tableName := titleCase .Table -}}
{{- $varName := camelCase $tableName -}}
// {{$tableName}}All retrieves all records.
func {{$tableName}}All(db boil.DB) ([]*{{$tableName}}, error) {
var {{$varName}} []*{{$tableName}}
rows, err := db.Query(`SELECT {{selectParamNames .Table .Columns}} FROM {{.Table}}`)
if err != nil {
return nil, fmt.Errorf("models: failed to query: %v", err)
}
for rows.Next() {
{{$varName}}Tmp := {{$tableName}}{}
if err := rows.Scan({{scanParamNames $varName .Columns}}); err != nil {
return nil, fmt.Errorf("models: failed to scan row: %v", err)
}
{{$varName}} = append({{$varName}}, {{$varName}}Tmp)
}
if err := rows.Err(); err != nil {
return nil, fmt.Errorf("models: failed to read rows: %v", err)
}
return {{$varName}}, nil
}