2016-09-03 12:47:27 -07:00
|
|
|
{{if .Table.IsJoinTable -}}
|
|
|
|
{{else -}}
|
2016-06-19 22:22:50 -07:00
|
|
|
{{- $varNameSingular := .Table.Name | singular | camelCase -}}
|
|
|
|
{{- $tableNameSingular := .Table.Name | singular | titleCase -}}
|
2016-06-19 16:29:59 -07:00
|
|
|
var (
|
2016-09-15 14:27:06 +10:00
|
|
|
{{$varNameSingular}}Columns = []string{{"{"}}{{.Table.Columns | columnNames | stringMap .StringFuncs.quoteWrap | join ", "}}{{"}"}}
|
2017-03-16 10:54:55 +03:00
|
|
|
{{if eq .DriverName "mssql" -}}
|
2017-03-19 12:42:55 +03:00
|
|
|
{{$varNameSingular}}ColumnsWithAuto = []string{{"{"}}{{.Table.Columns | filterColumnsByAuto true | columnNames | stringMap .StringFuncs.quoteWrap | join ","}}{{"}"}}
|
2017-03-31 11:03:16 +03:00
|
|
|
{{end -}}
|
2016-09-15 14:27:06 +10:00
|
|
|
{{$varNameSingular}}ColumnsWithoutDefault = []string{{"{"}}{{.Table.Columns | filterColumnsByDefault false | columnNames | stringMap .StringFuncs.quoteWrap | join ","}}{{"}"}}
|
|
|
|
{{$varNameSingular}}ColumnsWithDefault = []string{{"{"}}{{.Table.Columns | filterColumnsByDefault true | columnNames | stringMap .StringFuncs.quoteWrap | join ","}}{{"}"}}
|
|
|
|
{{$varNameSingular}}PrimaryKeyColumns = []string{{"{"}}{{.Table.PKey.Columns | stringMap .StringFuncs.quoteWrap | join ", "}}{{"}"}}
|
2017-06-12 14:02:04 -04:00
|
|
|
{{$varNameSingular}}AutoIncrementColumn = "{{.Table.AutoIncrementColumn }}"
|
2016-06-19 16:29:59 -07:00
|
|
|
)
|
|
|
|
|
|
|
|
type (
|
2016-09-15 14:20:35 +10:00
|
|
|
// {{$tableNameSingular}}Slice is an alias for a slice of pointers to {{$tableNameSingular}}.
|
|
|
|
// This should generally be used opposed to []{{$tableNameSingular}}.
|
2016-09-14 18:08:30 +10:00
|
|
|
{{$tableNameSingular}}Slice []*{{$tableNameSingular}}
|
2016-09-20 21:07:50 -07:00
|
|
|
{{if not .NoHooks -}}
|
2016-09-15 14:20:35 +10:00
|
|
|
// {{$tableNameSingular}}Hook is the signature for custom {{$tableNameSingular}} hook methods
|
2016-09-14 18:08:30 +10:00
|
|
|
{{$tableNameSingular}}Hook func(boil.Executor, *{{$tableNameSingular}}) error
|
|
|
|
{{- end}}
|
2016-07-14 15:09:05 +10:00
|
|
|
|
2017-05-09 15:30:04 -04:00
|
|
|
{{$tableNameSingular}}Query struct {
|
2016-09-14 20:59:55 -07:00
|
|
|
*queries.Query
|
2016-09-14 18:08:30 +10:00
|
|
|
}
|
2016-06-19 16:29:59 -07:00
|
|
|
)
|
2016-08-29 00:12:37 +10:00
|
|
|
|
2016-09-14 23:03:05 -07:00
|
|
|
// Cache for insert, update and upsert
|
2016-09-03 12:24:18 -07:00
|
|
|
var (
|
2016-09-14 18:08:30 +10:00
|
|
|
{{$varNameSingular}}Type = reflect.TypeOf(&{{$tableNameSingular}}{})
|
2016-09-14 20:59:55 -07:00
|
|
|
{{$varNameSingular}}Mapping = queries.MakeStructMapping({{$varNameSingular}}Type)
|
2016-09-15 23:44:44 -07:00
|
|
|
{{$varNameSingular}}PrimaryKeyMapping, _ = queries.BindMapping({{$varNameSingular}}Type, {{$varNameSingular}}Mapping, {{$varNameSingular}}PrimaryKeyColumns)
|
2016-09-14 18:08:30 +10:00
|
|
|
{{$varNameSingular}}InsertCacheMut sync.RWMutex
|
|
|
|
{{$varNameSingular}}InsertCache = make(map[string]insertCache)
|
|
|
|
{{$varNameSingular}}UpdateCacheMut sync.RWMutex
|
|
|
|
{{$varNameSingular}}UpdateCache = make(map[string]updateCache)
|
2016-09-14 23:03:05 -07:00
|
|
|
{{$varNameSingular}}UpsertCacheMut sync.RWMutex
|
|
|
|
{{$varNameSingular}}UpsertCache = make(map[string]insertCache)
|
2016-09-03 12:24:18 -07:00
|
|
|
)
|
|
|
|
|
2016-09-16 00:22:12 -07:00
|
|
|
var (
|
|
|
|
// Force time package dependency for automated UpdatedAt/CreatedAt.
|
|
|
|
_ = time.Second
|
|
|
|
// Force bytes in case of primary key column that uses []byte (for relationship compares)
|
|
|
|
_ = bytes.MinRead
|
|
|
|
)
|
2016-09-03 12:47:27 -07:00
|
|
|
{{end -}}
|