package models import ( {{- $bb := false -}} {{- range .Columns -}} {{- $z := .IsQuery -}} {{- if ($z) -}} {{- if eq .GoType "time.Time" -}}{{- $bb = true -}}{{- end -}} {{- end -}} {{- end -}} {{- range .Columns -}} {{- if eq .GoField "CreatedAt" -}} {{- else if eq .GoField "UpdatedAt" -}} {{- else if eq .GoField "DeletedAt" -}} {{- else -}} {{- if eq .GoType "time.Time" -}}{{- $bb = true -}}{{- end -}} {{- end -}} {{- end -}} {{- if eq $bb true }} "time" {{- end }} "go-admin/common/models" ) {{/* models.Model supplies an int primary key named Id, so it stands in for the key column only when that is exactly the key the table has. Any other key - a different name, or a string - is declared as its own field, or GetId below would name a field that does not exist. */ -}} {{- $embed := false -}} {{- range .Columns -}}{{- if and .Pk (eq .GoField "Id") (eq .GoType "int") -}}{{- $embed = true -}}{{- end -}}{{- end -}} type {{.ClassName}} struct { {{- if $embed }} models.Model {{- end }} {{ range .Columns -}} {{$x := .Pk}} {{- if ($x) }} {{- if not $embed }} {{.GoField}} {{.GoType}} `json:"{{.JsonField}}" gorm:"primaryKey;type:{{.ColumnType}};comment:{{- if eq .ColumnComment "" -}}{{.GoField}}{{- else -}}{{.ColumnComment}}{{end -}}"` {{- end }} {{- else if eq .GoField "CreatedAt" -}} {{- else if eq .GoField "UpdatedAt" -}} {{- else if eq .GoField "DeletedAt" -}} {{- else if eq .GoField "CreateBy" -}} {{- else if eq .GoField "UpdateBy" -}} {{- else }} {{.GoField}} {{.GoType}} `json:"{{.JsonField}}" gorm:"type:{{.ColumnType}};comment:{{- if eq .ColumnComment "" -}}{{.GoField}}{{- else -}}{{.ColumnComment}}{{end -}}"` {{end -}} {{- end }} models.ModelTime models.ControlBy } func ({{.ClassName}}) TableName() string { return "{{.TBName}}" } func (e *{{.ClassName}}) Generate() models.ActiveRecord { o := *e return &o } func (e *{{.ClassName}}) GetId() interface{} { return e.{{.PkGoField}} }