From a45a9649bee34726b867a9f8647dd6a4646da15f Mon Sep 17 00:00:00 2001 From: Vadim Larionov Date: Tue, 13 Feb 2018 13:53:04 +0300 Subject: [PATCH] 21: generate DBSchemaField as exported type --- .../comparison/gorm4/autogenerated_gorm4.go | 115 ++++++++--------- queryset/template.go | 8 +- queryset/test/autogenerated_models.go | 116 +++++++++--------- .../test/pkgimport/autogenerated_models.go | 71 +++++------ 4 files changed, 156 insertions(+), 154 deletions(-) diff --git a/examples/comparison/gorm4/autogenerated_gorm4.go b/examples/comparison/gorm4/autogenerated_gorm4.go index 70e7800..b19ce67 100644 --- a/examples/comparison/gorm4/autogenerated_gorm4.go +++ b/examples/comparison/gorm4/autogenerated_gorm4.go @@ -50,37 +50,37 @@ func (o *User) Create(db *gorm.DB) error { // CreatedAtEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) CreatedAtEq(createdAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("created_at = ?", createdAt)) + return qs.w(qs.db.Where("`created_at` = ?", createdAt)) } // CreatedAtGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) CreatedAtGt(createdAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("created_at > ?", createdAt)) + return qs.w(qs.db.Where("`created_at` > ?", createdAt)) } // CreatedAtGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) CreatedAtGte(createdAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("created_at >= ?", createdAt)) + return qs.w(qs.db.Where("`created_at` >= ?", createdAt)) } // CreatedAtLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) CreatedAtLt(createdAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("created_at < ?", createdAt)) + return qs.w(qs.db.Where("`created_at` < ?", createdAt)) } // CreatedAtLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) CreatedAtLte(createdAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("created_at <= ?", createdAt)) + return qs.w(qs.db.Where("`created_at` <= ?", createdAt)) } // CreatedAtNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) CreatedAtNe(createdAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("created_at != ?", createdAt)) + return qs.w(qs.db.Where("`created_at` != ?", createdAt)) } // Delete is an autogenerated method @@ -98,19 +98,19 @@ func (qs UserQuerySet) Delete() error { // DeletedAtEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) DeletedAtEq(deletedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("deleted_at = ?", deletedAt)) + return qs.w(qs.db.Where("`deleted_at` = ?", deletedAt)) } // DeletedAtGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) DeletedAtGt(deletedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("deleted_at > ?", deletedAt)) + return qs.w(qs.db.Where("`deleted_at` > ?", deletedAt)) } // DeletedAtGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) DeletedAtGte(deletedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("deleted_at >= ?", deletedAt)) + return qs.w(qs.db.Where("`deleted_at` >= ?", deletedAt)) } // DeletedAtIsNotNull is an autogenerated method @@ -128,19 +128,19 @@ func (qs UserQuerySet) DeletedAtIsNull() UserQuerySet { // DeletedAtLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) DeletedAtLt(deletedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("deleted_at < ?", deletedAt)) + return qs.w(qs.db.Where("`deleted_at` < ?", deletedAt)) } // DeletedAtLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) DeletedAtLte(deletedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("deleted_at <= ?", deletedAt)) + return qs.w(qs.db.Where("`deleted_at` <= ?", deletedAt)) } // DeletedAtNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) DeletedAtNe(deletedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("deleted_at != ?", deletedAt)) + return qs.w(qs.db.Where("`deleted_at` != ?", deletedAt)) } // GetUpdater is an autogenerated method @@ -152,19 +152,19 @@ func (qs UserQuerySet) GetUpdater() UserUpdater { // IDEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) IDEq(ID uint) UserQuerySet { - return qs.w(qs.db.Where("id = ?", ID)) + return qs.w(qs.db.Where("`id` = ?", ID)) } // IDGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) IDGt(ID uint) UserQuerySet { - return qs.w(qs.db.Where("id > ?", ID)) + return qs.w(qs.db.Where("`id` > ?", ID)) } // IDGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) IDGte(ID uint) UserQuerySet { - return qs.w(qs.db.Where("id >= ?", ID)) + return qs.w(qs.db.Where("`id` >= ?", ID)) } // IDIn is an autogenerated method @@ -174,25 +174,25 @@ func (qs UserQuerySet) IDIn(ID uint, IDRest ...uint) UserQuerySet { for _, arg := range IDRest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("id IN (?)", iArgs)) + return qs.w(qs.db.Where("`id` IN (?)", iArgs)) } // IDLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) IDLt(ID uint) UserQuerySet { - return qs.w(qs.db.Where("id < ?", ID)) + return qs.w(qs.db.Where("`id` < ?", ID)) } // IDLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) IDLte(ID uint) UserQuerySet { - return qs.w(qs.db.Where("id <= ?", ID)) + return qs.w(qs.db.Where("`id` <= ?", ID)) } // IDNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) IDNe(ID uint) UserQuerySet { - return qs.w(qs.db.Where("id != ?", ID)) + return qs.w(qs.db.Where("`id` != ?", ID)) } // IDNotIn is an autogenerated method @@ -202,7 +202,7 @@ func (qs UserQuerySet) IDNotIn(ID uint, IDRest ...uint) UserQuerySet { for _, arg := range IDRest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("id NOT IN (?)", iArgs)) + return qs.w(qs.db.Where("`id` NOT IN (?)", iArgs)) } // Limit is an autogenerated method @@ -292,19 +292,19 @@ func (qs UserQuerySet) OrderDescByUpdatedAt() UserQuerySet { // RatingEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingEq(rating int) UserQuerySet { - return qs.w(qs.db.Where("rating = ?", rating)) + return qs.w(qs.db.Where("`rating` = ?", rating)) } // RatingGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingGt(rating int) UserQuerySet { - return qs.w(qs.db.Where("rating > ?", rating)) + return qs.w(qs.db.Where("`rating` > ?", rating)) } // RatingGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingGte(rating int) UserQuerySet { - return qs.w(qs.db.Where("rating >= ?", rating)) + return qs.w(qs.db.Where("`rating` >= ?", rating)) } // RatingIn is an autogenerated method @@ -314,37 +314,37 @@ func (qs UserQuerySet) RatingIn(rating int, ratingRest ...int) UserQuerySet { for _, arg := range ratingRest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("rating IN (?)", iArgs)) + return qs.w(qs.db.Where("`rating` IN (?)", iArgs)) } // RatingLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingLt(rating int) UserQuerySet { - return qs.w(qs.db.Where("rating < ?", rating)) + return qs.w(qs.db.Where("`rating` < ?", rating)) } // RatingLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingLte(rating int) UserQuerySet { - return qs.w(qs.db.Where("rating <= ?", rating)) + return qs.w(qs.db.Where("`rating` <= ?", rating)) } // RatingMarksEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingMarksEq(ratingMarks int) UserQuerySet { - return qs.w(qs.db.Where("rating_marks = ?", ratingMarks)) + return qs.w(qs.db.Where("`rating_marks` = ?", ratingMarks)) } // RatingMarksGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingMarksGt(ratingMarks int) UserQuerySet { - return qs.w(qs.db.Where("rating_marks > ?", ratingMarks)) + return qs.w(qs.db.Where("`rating_marks` > ?", ratingMarks)) } // RatingMarksGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingMarksGte(ratingMarks int) UserQuerySet { - return qs.w(qs.db.Where("rating_marks >= ?", ratingMarks)) + return qs.w(qs.db.Where("`rating_marks` >= ?", ratingMarks)) } // RatingMarksIn is an autogenerated method @@ -354,25 +354,25 @@ func (qs UserQuerySet) RatingMarksIn(ratingMarks int, ratingMarksRest ...int) Us for _, arg := range ratingMarksRest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("rating_marks IN (?)", iArgs)) + return qs.w(qs.db.Where("`rating_marks` IN (?)", iArgs)) } // RatingMarksLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingMarksLt(ratingMarks int) UserQuerySet { - return qs.w(qs.db.Where("rating_marks < ?", ratingMarks)) + return qs.w(qs.db.Where("`rating_marks` < ?", ratingMarks)) } // RatingMarksLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingMarksLte(ratingMarks int) UserQuerySet { - return qs.w(qs.db.Where("rating_marks <= ?", ratingMarks)) + return qs.w(qs.db.Where("`rating_marks` <= ?", ratingMarks)) } // RatingMarksNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingMarksNe(ratingMarks int) UserQuerySet { - return qs.w(qs.db.Where("rating_marks != ?", ratingMarks)) + return qs.w(qs.db.Where("`rating_marks` != ?", ratingMarks)) } // RatingMarksNotIn is an autogenerated method @@ -382,13 +382,13 @@ func (qs UserQuerySet) RatingMarksNotIn(ratingMarks int, ratingMarksRest ...int) for _, arg := range ratingMarksRest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("rating_marks NOT IN (?)", iArgs)) + return qs.w(qs.db.Where("`rating_marks` NOT IN (?)", iArgs)) } // RatingNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) RatingNe(rating int) UserQuerySet { - return qs.w(qs.db.Where("rating != ?", rating)) + return qs.w(qs.db.Where("`rating` != ?", rating)) } // RatingNotIn is an autogenerated method @@ -398,7 +398,7 @@ func (qs UserQuerySet) RatingNotIn(rating int, ratingRest ...int) UserQuerySet { for _, arg := range ratingRest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("rating NOT IN (?)", iArgs)) + return qs.w(qs.db.Where("`rating` NOT IN (?)", iArgs)) } // SetCreatedAt is an autogenerated method @@ -459,69 +459,70 @@ func (u UserUpdater) UpdateNum() (int64, error) { // UpdatedAtEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) UpdatedAtEq(updatedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("updated_at = ?", updatedAt)) + return qs.w(qs.db.Where("`updated_at` = ?", updatedAt)) } // UpdatedAtGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) UpdatedAtGt(updatedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("updated_at > ?", updatedAt)) + return qs.w(qs.db.Where("`updated_at` > ?", updatedAt)) } // UpdatedAtGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) UpdatedAtGte(updatedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("updated_at >= ?", updatedAt)) + return qs.w(qs.db.Where("`updated_at` >= ?", updatedAt)) } // UpdatedAtLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) UpdatedAtLt(updatedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("updated_at < ?", updatedAt)) + return qs.w(qs.db.Where("`updated_at` < ?", updatedAt)) } // UpdatedAtLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) UpdatedAtLte(updatedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("updated_at <= ?", updatedAt)) + return qs.w(qs.db.Where("`updated_at` <= ?", updatedAt)) } // UpdatedAtNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) UpdatedAtNe(updatedAt time.Time) UserQuerySet { - return qs.w(qs.db.Where("updated_at != ?", updatedAt)) + return qs.w(qs.db.Where("`updated_at` != ?", updatedAt)) } // ===== END of query set UserQuerySet // ===== BEGIN of User modifiers -type userDBSchemaField string +// UserDBSchemaField describes database schema field. It requires for method 'Update' +type UserDBSchemaField string -func (f userDBSchemaField) String() string { +func (f UserDBSchemaField) String() string { return string(f) } // UserDBSchema stores db field names of User var UserDBSchema = struct { - ID userDBSchemaField - CreatedAt userDBSchemaField - UpdatedAt userDBSchemaField - DeletedAt userDBSchemaField - Rating userDBSchemaField - RatingMarks userDBSchemaField + ID UserDBSchemaField + CreatedAt UserDBSchemaField + UpdatedAt UserDBSchemaField + DeletedAt UserDBSchemaField + Rating UserDBSchemaField + RatingMarks UserDBSchemaField }{ - ID: userDBSchemaField("id"), - CreatedAt: userDBSchemaField("created_at"), - UpdatedAt: userDBSchemaField("updated_at"), - DeletedAt: userDBSchemaField("deleted_at"), - Rating: userDBSchemaField("rating"), - RatingMarks: userDBSchemaField("rating_marks"), + ID: UserDBSchemaField("id"), + CreatedAt: UserDBSchemaField("created_at"), + UpdatedAt: UserDBSchemaField("updated_at"), + DeletedAt: UserDBSchemaField("deleted_at"), + Rating: UserDBSchemaField("rating"), + RatingMarks: UserDBSchemaField("rating_marks"), } // Update updates User fields by primary key -func (o *User) Update(db *gorm.DB, fields ...userDBSchemaField) error { +func (o *User) Update(db *gorm.DB, fields ...UserDBSchemaField) error { dbNameToFieldName := map[string]interface{}{ "id": o.ID, "created_at": o.CreatedAt, diff --git a/queryset/template.go b/queryset/template.go index b295784..6bb0751 100644 --- a/queryset/template.go +++ b/queryset/template.go @@ -2,15 +2,10 @@ package queryset import ( "text/template" - - "github.com/jirfag/go-queryset/queryset/methods" ) var qsTmpl = template.Must( template.New("generator"). - Funcs(template.FuncMap{ - "lcf": methods.LowercaseFirstRune, - }). Parse(qsCode), ) @@ -48,7 +43,8 @@ const qsCode = ` // ===== BEGIN of {{ .StructName }} modifiers - {{ $ft := printf "%s%s" .StructName "DBSchemaField" | lcf }} + {{ $ft := printf "%s%s" .StructName "DBSchemaField" }} + // {{ $ft }} describes database schema field. It requires for method 'Update' type {{ $ft }} string func (f {{ $ft }}) String() string { diff --git a/queryset/test/autogenerated_models.go b/queryset/test/autogenerated_models.go index 975e3c0..a58bd4a 100644 --- a/queryset/test/autogenerated_models.go +++ b/queryset/test/autogenerated_models.go @@ -386,30 +386,31 @@ func (qs BlogQuerySet) UpdatedAtNe(updatedAt time.Time) BlogQuerySet { // ===== BEGIN of Blog modifiers -type blogDBSchemaField string +// BlogDBSchemaField describes database schema field. It requires for method 'Update' +type BlogDBSchemaField string -func (f blogDBSchemaField) String() string { +func (f BlogDBSchemaField) String() string { return string(f) } // BlogDBSchema stores db field names of Blog var BlogDBSchema = struct { - ID blogDBSchemaField - CreatedAt blogDBSchemaField - UpdatedAt blogDBSchemaField - DeletedAt blogDBSchemaField - Name blogDBSchemaField + ID BlogDBSchemaField + CreatedAt BlogDBSchemaField + UpdatedAt BlogDBSchemaField + DeletedAt BlogDBSchemaField + Name BlogDBSchemaField }{ - ID: blogDBSchemaField("id"), - CreatedAt: blogDBSchemaField("created_at"), - UpdatedAt: blogDBSchemaField("updated_at"), - DeletedAt: blogDBSchemaField("deleted_at"), - Name: blogDBSchemaField("myname"), + ID: BlogDBSchemaField("id"), + CreatedAt: BlogDBSchemaField("created_at"), + UpdatedAt: BlogDBSchemaField("updated_at"), + DeletedAt: BlogDBSchemaField("deleted_at"), + Name: BlogDBSchemaField("myname"), } // Update updates Blog fields by primary key -func (o *Blog) Update(db *gorm.DB, fields ...blogDBSchemaField) error { +func (o *Blog) Update(db *gorm.DB, fields ...BlogDBSchemaField) error { dbNameToFieldName := map[string]interface{}{ "id": o.ID, "created_at": o.CreatedAt, @@ -649,24 +650,25 @@ func (u CheckReservedKeywordsUpdater) UpdateNum() (int64, error) { // ===== BEGIN of CheckReservedKeywords modifiers -type checkReservedKeywordsDBSchemaField string +// CheckReservedKeywordsDBSchemaField describes database schema field. It requires for method 'Update' +type CheckReservedKeywordsDBSchemaField string -func (f checkReservedKeywordsDBSchemaField) String() string { +func (f CheckReservedKeywordsDBSchemaField) String() string { return string(f) } // CheckReservedKeywordsDBSchema stores db field names of CheckReservedKeywords var CheckReservedKeywordsDBSchema = struct { - Type checkReservedKeywordsDBSchemaField - Struct checkReservedKeywordsDBSchemaField + Type CheckReservedKeywordsDBSchemaField + Struct CheckReservedKeywordsDBSchemaField }{ - Type: checkReservedKeywordsDBSchemaField("type"), - Struct: checkReservedKeywordsDBSchemaField("struct"), + Type: CheckReservedKeywordsDBSchemaField("type"), + Struct: CheckReservedKeywordsDBSchemaField("struct"), } // Update updates CheckReservedKeywords fields by primary key -func (o *CheckReservedKeywords) Update(db *gorm.DB, fields ...checkReservedKeywordsDBSchemaField) error { +func (o *CheckReservedKeywords) Update(db *gorm.DB, fields ...CheckReservedKeywordsDBSchemaField) error { dbNameToFieldName := map[string]interface{}{ "type": o.Type, "struct": o.Struct, @@ -1162,36 +1164,37 @@ func (qs PostQuerySet) UpdatedAtNe(updatedAt time.Time) PostQuerySet { // ===== BEGIN of Post modifiers -type postDBSchemaField string +// PostDBSchemaField describes database schema field. It requires for method 'Update' +type PostDBSchemaField string -func (f postDBSchemaField) String() string { +func (f PostDBSchemaField) String() string { return string(f) } // PostDBSchema stores db field names of Post var PostDBSchema = struct { - ID postDBSchemaField - CreatedAt postDBSchemaField - UpdatedAt postDBSchemaField - DeletedAt postDBSchemaField - Blog postDBSchemaField - User postDBSchemaField - Title postDBSchemaField - Str postDBSchemaField + ID PostDBSchemaField + CreatedAt PostDBSchemaField + UpdatedAt PostDBSchemaField + DeletedAt PostDBSchemaField + Blog PostDBSchemaField + User PostDBSchemaField + Title PostDBSchemaField + Str PostDBSchemaField }{ - ID: postDBSchemaField("id"), - CreatedAt: postDBSchemaField("created_at"), - UpdatedAt: postDBSchemaField("updated_at"), - DeletedAt: postDBSchemaField("deleted_at"), - Blog: postDBSchemaField("blog"), - User: postDBSchemaField("user"), - Title: postDBSchemaField("title"), - Str: postDBSchemaField("str"), + ID: PostDBSchemaField("id"), + CreatedAt: PostDBSchemaField("created_at"), + UpdatedAt: PostDBSchemaField("updated_at"), + DeletedAt: PostDBSchemaField("deleted_at"), + Blog: PostDBSchemaField("blog"), + User: PostDBSchemaField("user"), + Title: PostDBSchemaField("title"), + Str: PostDBSchemaField("str"), } // Update updates Post fields by primary key -func (o *Post) Update(db *gorm.DB, fields ...postDBSchemaField) error { +func (o *Post) Update(db *gorm.DB, fields ...PostDBSchemaField) error { dbNameToFieldName := map[string]interface{}{ "id": o.ID, "created_at": o.CreatedAt, @@ -1701,34 +1704,35 @@ func (qs UserQuerySet) UpdatedAtNe(updatedAt time.Time) UserQuerySet { // ===== BEGIN of User modifiers -type userDBSchemaField string +// UserDBSchemaField describes database schema field. It requires for method 'Update' +type UserDBSchemaField string -func (f userDBSchemaField) String() string { +func (f UserDBSchemaField) String() string { return string(f) } // UserDBSchema stores db field names of User var UserDBSchema = struct { - ID userDBSchemaField - CreatedAt userDBSchemaField - UpdatedAt userDBSchemaField - DeletedAt userDBSchemaField - Name userDBSchemaField - Surname userDBSchemaField - Email userDBSchemaField + ID UserDBSchemaField + CreatedAt UserDBSchemaField + UpdatedAt UserDBSchemaField + DeletedAt UserDBSchemaField + Name UserDBSchemaField + Surname UserDBSchemaField + Email UserDBSchemaField }{ - ID: userDBSchemaField("id"), - CreatedAt: userDBSchemaField("created_at"), - UpdatedAt: userDBSchemaField("updated_at"), - DeletedAt: userDBSchemaField("deleted_at"), - Name: userDBSchemaField("name"), - Surname: userDBSchemaField("user_surname"), - Email: userDBSchemaField("email"), + ID: UserDBSchemaField("id"), + CreatedAt: UserDBSchemaField("created_at"), + UpdatedAt: UserDBSchemaField("updated_at"), + DeletedAt: UserDBSchemaField("deleted_at"), + Name: UserDBSchemaField("name"), + Surname: UserDBSchemaField("user_surname"), + Email: UserDBSchemaField("email"), } // Update updates User fields by primary key -func (o *User) Update(db *gorm.DB, fields ...userDBSchemaField) error { +func (o *User) Update(db *gorm.DB, fields ...UserDBSchemaField) error { dbNameToFieldName := map[string]interface{}{ "id": o.ID, "created_at": o.CreatedAt, diff --git a/queryset/test/pkgimport/autogenerated_models.go b/queryset/test/pkgimport/autogenerated_models.go index fcb811a..0f752a7 100644 --- a/queryset/test/pkgimport/autogenerated_models.go +++ b/queryset/test/pkgimport/autogenerated_models.go @@ -50,19 +50,19 @@ func (o *Example) Create(db *gorm.DB) error { // Currency1Eq is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency1Eq(currency1 forex.Currency1) ExampleQuerySet { - return qs.w(qs.db.Where("currency1 = ?", currency1)) + return qs.w(qs.db.Where("`currency1` = ?", currency1)) } // Currency1Gt is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency1Gt(currency1 forex.Currency1) ExampleQuerySet { - return qs.w(qs.db.Where("currency1 > ?", currency1)) + return qs.w(qs.db.Where("`currency1` > ?", currency1)) } // Currency1Gte is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency1Gte(currency1 forex.Currency1) ExampleQuerySet { - return qs.w(qs.db.Where("currency1 >= ?", currency1)) + return qs.w(qs.db.Where("`currency1` >= ?", currency1)) } // Currency1In is an autogenerated method @@ -72,25 +72,25 @@ func (qs ExampleQuerySet) Currency1In(currency1 forex.Currency1, currency1Rest . for _, arg := range currency1Rest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("currency1 IN (?)", iArgs)) + return qs.w(qs.db.Where("`currency1` IN (?)", iArgs)) } // Currency1Lt is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency1Lt(currency1 forex.Currency1) ExampleQuerySet { - return qs.w(qs.db.Where("currency1 < ?", currency1)) + return qs.w(qs.db.Where("`currency1` < ?", currency1)) } // Currency1Lte is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency1Lte(currency1 forex.Currency1) ExampleQuerySet { - return qs.w(qs.db.Where("currency1 <= ?", currency1)) + return qs.w(qs.db.Where("`currency1` <= ?", currency1)) } // Currency1Ne is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency1Ne(currency1 forex.Currency1) ExampleQuerySet { - return qs.w(qs.db.Where("currency1 != ?", currency1)) + return qs.w(qs.db.Where("`currency1` != ?", currency1)) } // Currency1NotIn is an autogenerated method @@ -100,13 +100,13 @@ func (qs ExampleQuerySet) Currency1NotIn(currency1 forex.Currency1, currency1Res for _, arg := range currency1Rest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("currency1 NOT IN (?)", iArgs)) + return qs.w(qs.db.Where("`currency1` NOT IN (?)", iArgs)) } // Currency2Eq is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency2Eq(currency2 forex.Currency2) ExampleQuerySet { - return qs.w(qs.db.Where("currency2 = ?", currency2)) + return qs.w(qs.db.Where("`currency2` = ?", currency2)) } // Currency2In is an autogenerated method @@ -116,13 +116,13 @@ func (qs ExampleQuerySet) Currency2In(currency2 forex.Currency2, currency2Rest . for _, arg := range currency2Rest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("currency2 IN (?)", iArgs)) + return qs.w(qs.db.Where("`currency2` IN (?)", iArgs)) } // Currency2Ne is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency2Ne(currency2 forex.Currency2) ExampleQuerySet { - return qs.w(qs.db.Where("currency2 != ?", currency2)) + return qs.w(qs.db.Where("`currency2` != ?", currency2)) } // Currency2NotIn is an autogenerated method @@ -132,13 +132,13 @@ func (qs ExampleQuerySet) Currency2NotIn(currency2 forex.Currency2, currency2Res for _, arg := range currency2Rest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("currency2 NOT IN (?)", iArgs)) + return qs.w(qs.db.Where("`currency2` NOT IN (?)", iArgs)) } // Currency3Eq is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency3Eq(currency3 forex.Currency3) ExampleQuerySet { - return qs.w(qs.db.Where("currency3 = ?", currency3)) + return qs.w(qs.db.Where("`currency3` = ?", currency3)) } // Currency3In is an autogenerated method @@ -148,13 +148,13 @@ func (qs ExampleQuerySet) Currency3In(currency3 forex.Currency3, currency3Rest . for _, arg := range currency3Rest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("currency3 IN (?)", iArgs)) + return qs.w(qs.db.Where("`currency3` IN (?)", iArgs)) } // Currency3Ne is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) Currency3Ne(currency3 forex.Currency3) ExampleQuerySet { - return qs.w(qs.db.Where("currency3 != ?", currency3)) + return qs.w(qs.db.Where("`currency3` != ?", currency3)) } // Currency3NotIn is an autogenerated method @@ -164,7 +164,7 @@ func (qs ExampleQuerySet) Currency3NotIn(currency3 forex.Currency3, currency3Res for _, arg := range currency3Rest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("currency3 NOT IN (?)", iArgs)) + return qs.w(qs.db.Where("`currency3` NOT IN (?)", iArgs)) } // Delete is an autogenerated method @@ -224,19 +224,19 @@ func (qs ExampleQuerySet) OrderDescByPriceID() ExampleQuerySet { // PriceIDEq is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) PriceIDEq(priceID int64) ExampleQuerySet { - return qs.w(qs.db.Where("price_id = ?", priceID)) + return qs.w(qs.db.Where("`price_id` = ?", priceID)) } // PriceIDGt is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) PriceIDGt(priceID int64) ExampleQuerySet { - return qs.w(qs.db.Where("price_id > ?", priceID)) + return qs.w(qs.db.Where("`price_id` > ?", priceID)) } // PriceIDGte is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) PriceIDGte(priceID int64) ExampleQuerySet { - return qs.w(qs.db.Where("price_id >= ?", priceID)) + return qs.w(qs.db.Where("`price_id` >= ?", priceID)) } // PriceIDIn is an autogenerated method @@ -246,25 +246,25 @@ func (qs ExampleQuerySet) PriceIDIn(priceID int64, priceIDRest ...int64) Example for _, arg := range priceIDRest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("price_id IN (?)", iArgs)) + return qs.w(qs.db.Where("`price_id` IN (?)", iArgs)) } // PriceIDLt is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) PriceIDLt(priceID int64) ExampleQuerySet { - return qs.w(qs.db.Where("price_id < ?", priceID)) + return qs.w(qs.db.Where("`price_id` < ?", priceID)) } // PriceIDLte is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) PriceIDLte(priceID int64) ExampleQuerySet { - return qs.w(qs.db.Where("price_id <= ?", priceID)) + return qs.w(qs.db.Where("`price_id` <= ?", priceID)) } // PriceIDNe is an autogenerated method // nolint: dupl func (qs ExampleQuerySet) PriceIDNe(priceID int64) ExampleQuerySet { - return qs.w(qs.db.Where("price_id != ?", priceID)) + return qs.w(qs.db.Where("`price_id` != ?", priceID)) } // PriceIDNotIn is an autogenerated method @@ -274,7 +274,7 @@ func (qs ExampleQuerySet) PriceIDNotIn(priceID int64, priceIDRest ...int64) Exam for _, arg := range priceIDRest { iArgs = append(iArgs, arg) } - return qs.w(qs.db.Where("price_id NOT IN (?)", iArgs)) + return qs.w(qs.db.Where("`price_id` NOT IN (?)", iArgs)) } // SetCurrency1 is an autogenerated method @@ -322,28 +322,29 @@ func (u ExampleUpdater) UpdateNum() (int64, error) { // ===== BEGIN of Example modifiers -type exampleDBSchemaField string +// ExampleDBSchemaField describes database schema field. It requires for method 'Update' +type ExampleDBSchemaField string -func (f exampleDBSchemaField) String() string { +func (f ExampleDBSchemaField) String() string { return string(f) } // ExampleDBSchema stores db field names of Example var ExampleDBSchema = struct { - PriceID exampleDBSchemaField - Currency1 exampleDBSchemaField - Currency2 exampleDBSchemaField - Currency3 exampleDBSchemaField + PriceID ExampleDBSchemaField + Currency1 ExampleDBSchemaField + Currency2 ExampleDBSchemaField + Currency3 ExampleDBSchemaField }{ - PriceID: exampleDBSchemaField("price_id"), - Currency1: exampleDBSchemaField("currency1"), - Currency2: exampleDBSchemaField("currency2"), - Currency3: exampleDBSchemaField("currency3"), + PriceID: ExampleDBSchemaField("price_id"), + Currency1: ExampleDBSchemaField("currency1"), + Currency2: ExampleDBSchemaField("currency2"), + Currency3: ExampleDBSchemaField("currency3"), } // Update updates Example fields by primary key -func (o *Example) Update(db *gorm.DB, fields ...exampleDBSchemaField) error { +func (o *Example) Update(db *gorm.DB, fields ...ExampleDBSchemaField) error { dbNameToFieldName := map[string]interface{}{ "price_id": o.PriceID, "currency1": o.Currency1,