diff --git a/internal/queryset/generator/queryset.go b/internal/queryset/generator/queryset.go index a469f80..832cc8b 100644 --- a/internal/queryset/generator/queryset.go +++ b/internal/queryset/generator/queryset.go @@ -74,8 +74,10 @@ func genStructFieldInfos(s parser.ParsedStruct, types *types.Package) (ret []fie return ret } -func generateQuerySetConfigs(types *types.Package, - structs map[string]parser.ParsedStruct) querySetStructConfigSlice { +func generateQuerySetConfigs( + types *types.Package, + structs map[string]parser.ParsedStruct, +) querySetStructConfigSlice { querySetStructConfigs := querySetStructConfigSlice{} @@ -103,7 +105,10 @@ func generateQuerySetConfigs(types *types.Package, // GenerateQuerySetsForStructs is an internal method to retrieve querysets // generated code from parsed structs -func GenerateQuerySetsForStructs(types *types.Package, structs map[string]parser.ParsedStruct) (io.Reader, error) { +func GenerateQuerySetsForStructs( + types *types.Package, + structs map[string]parser.ParsedStruct, +) (io.Reader, error) { querySetStructConfigs := generateQuerySetConfigs(types, structs) if len(querySetStructConfigs) == 0 { return nil, nil diff --git a/internal/queryset/generator/queryset_test.go b/internal/queryset/generator/queryset_test.go index 95d7414..d06f7ad 100644 --- a/internal/queryset/generator/queryset_test.go +++ b/internal/queryset/generator/queryset_test.go @@ -220,7 +220,7 @@ func testUserSelectWithSurnameFilter(t *testing.T, m sqlmock.Sqlmock, db *gorm.D expUsers[0].Surname = &surname req := "SELECT * FROM `users` " + - "WHERE `users`.`deleted_at` IS NULL AND ((user_surname = ?)) ORDER BY `users`.`id` ASC LIMIT 1" + "WHERE `users`.`deleted_at` IS NULL AND ((`user_surname` = ?)) ORDER BY `users`.`id` ASC LIMIT 1" m.ExpectQuery(fixedFullRe(req)). WillReturnRows(getRowsForUsers(expUsers)) @@ -241,28 +241,28 @@ type userQueryTestCase struct { func testUserQueryFilters(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { cases := []userQueryTestCase{ { - q: "((name IN (?)))", + q: "((`name` IN (?)))", args: []driver.Value{"a"}, qs: func(qs test.UserQuerySet) test.UserQuerySet { return qs.NameIn("a") }, }, { - q: "((name IN (?,?)))", + q: "((`name` IN (?,?)))", args: []driver.Value{"a", "b"}, qs: func(qs test.UserQuerySet) test.UserQuerySet { return qs.NameIn("a", "b") }, }, { - q: "((name NOT IN (?)))", + q: "((`name` NOT IN (?)))", args: []driver.Value{"a"}, qs: func(qs test.UserQuerySet) test.UserQuerySet { return qs.NameNotIn("a") }, }, { - q: "((name NOT IN (?,?)))", + q: "((`name` NOT IN (?,?)))", args: []driver.Value{"a", "b"}, qs: func(qs test.UserQuerySet) test.UserQuerySet { return qs.NameNotIn("a", "b") @@ -321,7 +321,7 @@ func testUserCreateOneWithSurname(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) func testUserUpdateByEmail(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { u := getUser() - req := "UPDATE `users` SET `name` = ? WHERE `users`.`deleted_at` IS NULL AND ((email = ?))" + req := "UPDATE `users` SET `name` = ? WHERE `users`.`deleted_at` IS NULL AND ((`email` = ?))" m.ExpectExec(fixedFullRe(req)). WithArgs(u.Name, u.Email). WillReturnResult(sqlmock.NewResult(0, 1)) @@ -346,7 +346,7 @@ func testUserUpdateFieldsByPK(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { func testUserDeleteByEmail(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { u := getUser() - req := "UPDATE `users` SET `deleted_at`=? WHERE `users`.`deleted_at` IS NULL AND ((email = ?))" + req := "UPDATE `users` SET `deleted_at`=? WHERE `users`.`deleted_at` IS NULL AND ((`email` = ?))" m.ExpectExec(fixedFullRe(req)). WithArgs(sqlmock.AnyArg(), u.Email). WillReturnResult(sqlmock.NewResult(0, 1)) @@ -370,7 +370,7 @@ func testUserDeleteByPK(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { func testUsersDeleteNum(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { usersNum := 2 users := getTestUsers(usersNum) - req := "UPDATE `users` SET `deleted_at`=? WHERE `users`.`deleted_at` IS NULL AND ((email IN (?,?)))" + req := "UPDATE `users` SET `deleted_at`=? WHERE `users`.`deleted_at` IS NULL AND ((`email` IN (?,?)))" m.ExpectExec(fixedFullRe(req)). WithArgs(sqlmock.AnyArg(), users[0].Email, users[1].Email). WillReturnResult(sqlmock.NewResult(0, int64(usersNum))) @@ -385,7 +385,7 @@ func testUsersDeleteNum(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { func testUsersDeleteNumUnscoped(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { usersNum := 2 users := getTestUsers(usersNum) - req := "DELETE FROM `users` WHERE (email IN (?,?))" + req := "DELETE FROM `users` WHERE (`email` IN (?,?))" m.ExpectExec(fixedFullRe(req)). WithArgs(users[0].Email, users[1].Email). WillReturnResult(sqlmock.NewResult(0, int64(usersNum))) @@ -400,7 +400,7 @@ func testUsersDeleteNumUnscoped(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { func testUsersUpdateNum(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { usersNum := 2 users := getTestUsers(usersNum) - req := "UPDATE `users` SET `name` = ? WHERE `users`.`deleted_at` IS NULL AND ((email IN (?,?)))" + req := "UPDATE `users` SET `name` = ? WHERE `users`.`deleted_at` IS NULL AND ((`email` IN (?,?)))" m.ExpectExec(fixedFullRe(req)). WithArgs(sqlmock.AnyArg(), users[0].Email, users[1].Email). WillReturnResult(sqlmock.NewResult(0, int64(usersNum))) @@ -416,7 +416,7 @@ func testUsersUpdateNum(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { func testUsersCount(t *testing.T, m sqlmock.Sqlmock, db *gorm.DB) { expCount := 5 - req := "SELECT count(*) FROM `users` WHERE `users`.`deleted_at` IS NULL AND ((name != ?))" + req := "SELECT count(*) FROM `users` WHERE `users`.`deleted_at` IS NULL AND ((`name` != ?))" m.ExpectQuery(fixedFullRe(req)).WithArgs(driver.Value("")). WillReturnRows(getRowWithFields([]driver.Value{expCount})) diff --git a/internal/queryset/generator/test/autogenerated_models.go b/internal/queryset/generator/test/autogenerated_models.go index 21f6a4e..02080b0 100644 --- a/internal/queryset/generator/test/autogenerated_models.go +++ b/internal/queryset/generator/test/autogenerated_models.go @@ -69,37 +69,37 @@ func (qs BlogQuerySet) Count() (int, error) { // CreatedAtEq is an autogenerated method // nolint: dupl func (qs BlogQuerySet) CreatedAtEq(createdAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("created_at = ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "= ?"), createdAt)) } // CreatedAtGt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) CreatedAtGt(createdAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("created_at > ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "> ?"), createdAt)) } // CreatedAtGte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) CreatedAtGte(createdAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("created_at >= ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), ">= ?"), createdAt)) } // CreatedAtLt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) CreatedAtLt(createdAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("created_at < ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "< ?"), createdAt)) } // CreatedAtLte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) CreatedAtLte(createdAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("created_at <= ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "<= ?"), createdAt)) } // CreatedAtNe is an autogenerated method // nolint: dupl func (qs BlogQuerySet) CreatedAtNe(createdAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("created_at != ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "!= ?"), createdAt)) } // Delete is an autogenerated method @@ -125,49 +125,49 @@ func (qs BlogQuerySet) DeleteNumUnscoped() (int64, error) { // DeletedAtEq is an autogenerated method // nolint: dupl func (qs BlogQuerySet) DeletedAtEq(deletedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("deleted_at = ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "= ?"), deletedAt)) } // DeletedAtGt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) DeletedAtGt(deletedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("deleted_at > ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "> ?"), deletedAt)) } // DeletedAtGte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) DeletedAtGte(deletedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("deleted_at >= ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), ">= ?"), deletedAt)) } // DeletedAtIsNotNull is an autogenerated method // nolint: dupl func (qs BlogQuerySet) DeletedAtIsNotNull() BlogQuerySet { - return qs.w(qs.db.Where("deleted_at IS NOT NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "IS NOT NULL"))) } // DeletedAtIsNull is an autogenerated method // nolint: dupl func (qs BlogQuerySet) DeletedAtIsNull() BlogQuerySet { - return qs.w(qs.db.Where("deleted_at IS NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "IS NULL"))) } // DeletedAtLt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) DeletedAtLt(deletedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("deleted_at < ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "< ?"), deletedAt)) } // DeletedAtLte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) DeletedAtLte(deletedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("deleted_at <= ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "<= ?"), deletedAt)) } // DeletedAtNe is an autogenerated method // nolint: dupl func (qs BlogQuerySet) DeletedAtNe(deletedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("deleted_at != ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "!= ?"), deletedAt)) } // GetDB is an autogenerated method @@ -185,19 +185,19 @@ func (qs BlogQuerySet) GetUpdater() BlogUpdater { // IDEq is an autogenerated method // nolint: dupl func (qs BlogQuerySet) IDEq(ID uint) BlogQuerySet { - return qs.w(qs.db.Where("id = ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "= ?"), ID)) } // IDGt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) IDGt(ID uint) BlogQuerySet { - return qs.w(qs.db.Where("id > ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "> ?"), ID)) } // IDGte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) IDGte(ID uint) BlogQuerySet { - return qs.w(qs.db.Where("id >= ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), ">= ?"), ID)) } // IDIn is an autogenerated method @@ -207,25 +207,25 @@ func (qs BlogQuerySet) IDIn(ID ...uint) BlogQuerySet { qs.db.AddError(errors.New("must at least pass one ID in IDIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("id IN (?)", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("id"), "IN"), ID)) } // IDLt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) IDLt(ID uint) BlogQuerySet { - return qs.w(qs.db.Where("id < ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "< ?"), ID)) } // IDLte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) IDLte(ID uint) BlogQuerySet { - return qs.w(qs.db.Where("id <= ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "<= ?"), ID)) } // IDNe is an autogenerated method // nolint: dupl func (qs BlogQuerySet) IDNe(ID uint) BlogQuerySet { - return qs.w(qs.db.Where("id != ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "!= ?"), ID)) } // IDNotIn is an autogenerated method @@ -235,7 +235,7 @@ func (qs BlogQuerySet) IDNotIn(ID ...uint) BlogQuerySet { qs.db.AddError(errors.New("must at least pass one ID in IDNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("id NOT IN (?)", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("id"), "NOT IN"), ID)) } // Limit is an autogenerated method @@ -247,19 +247,19 @@ func (qs BlogQuerySet) Limit(limit int) BlogQuerySet { // NameEq is an autogenerated method // nolint: dupl func (qs BlogQuerySet) NameEq(name string) BlogQuerySet { - return qs.w(qs.db.Where("myname = ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("myname"), "= ?"), name)) } // NameGt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) NameGt(name string) BlogQuerySet { - return qs.w(qs.db.Where("myname > ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("myname"), "> ?"), name)) } // NameGte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) NameGte(name string) BlogQuerySet { - return qs.w(qs.db.Where("myname >= ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("myname"), ">= ?"), name)) } // NameIn is an autogenerated method @@ -269,31 +269,31 @@ func (qs BlogQuerySet) NameIn(name ...string) BlogQuerySet { qs.db.AddError(errors.New("must at least pass one name in NameIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("myname IN (?)", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("myname"), "IN"), name)) } // NameLike is an autogenerated method // nolint: dupl func (qs BlogQuerySet) NameLike(name string) BlogQuerySet { - return qs.w(qs.db.Where("myname LIKE ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("myname"), "LIKE ?"), name)) } // NameLt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) NameLt(name string) BlogQuerySet { - return qs.w(qs.db.Where("myname < ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("myname"), "< ?"), name)) } // NameLte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) NameLte(name string) BlogQuerySet { - return qs.w(qs.db.Where("myname <= ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("myname"), "<= ?"), name)) } // NameNe is an autogenerated method // nolint: dupl func (qs BlogQuerySet) NameNe(name string) BlogQuerySet { - return qs.w(qs.db.Where("myname != ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("myname"), "!= ?"), name)) } // NameNotIn is an autogenerated method @@ -303,13 +303,13 @@ func (qs BlogQuerySet) NameNotIn(name ...string) BlogQuerySet { qs.db.AddError(errors.New("must at least pass one name in NameNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("myname NOT IN (?)", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("myname"), "NOT IN"), name)) } // NameNotlike is an autogenerated method // nolint: dupl func (qs BlogQuerySet) NameNotlike(name string) BlogQuerySet { - return qs.w(qs.db.Where("myname NOT LIKE ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("myname"), "NOT LIKE ?"), name)) } // Offset is an autogenerated method @@ -327,97 +327,97 @@ func (qs BlogQuerySet) One(ret *Blog) error { // OrderAscByCreatedAt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderAscByCreatedAt() BlogQuerySet { - return qs.w(qs.db.Order("created_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("created_at")))) } // OrderAscByDeletedAt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderAscByDeletedAt() BlogQuerySet { - return qs.w(qs.db.Order("deleted_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("deleted_at")))) } // OrderAscByID is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderAscByID() BlogQuerySet { - return qs.w(qs.db.Order("id ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("id")))) } // OrderAscByName is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderAscByName() BlogQuerySet { - return qs.w(qs.db.Order("myname ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("myname")))) } // OrderAscByUpdatedAt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderAscByUpdatedAt() BlogQuerySet { - return qs.w(qs.db.Order("updated_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("updated_at")))) } // OrderDescByCreatedAt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderDescByCreatedAt() BlogQuerySet { - return qs.w(qs.db.Order("created_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("created_at")))) } // OrderDescByDeletedAt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderDescByDeletedAt() BlogQuerySet { - return qs.w(qs.db.Order("deleted_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("deleted_at")))) } // OrderDescByID is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderDescByID() BlogQuerySet { - return qs.w(qs.db.Order("id DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("id")))) } // OrderDescByName is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderDescByName() BlogQuerySet { - return qs.w(qs.db.Order("myname DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("myname")))) } // OrderDescByUpdatedAt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) OrderDescByUpdatedAt() BlogQuerySet { - return qs.w(qs.db.Order("updated_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("updated_at")))) } // UpdatedAtEq is an autogenerated method // nolint: dupl func (qs BlogQuerySet) UpdatedAtEq(updatedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("updated_at = ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "= ?"), updatedAt)) } // UpdatedAtGt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) UpdatedAtGt(updatedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("updated_at > ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "> ?"), updatedAt)) } // UpdatedAtGte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) UpdatedAtGte(updatedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("updated_at >= ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), ">= ?"), updatedAt)) } // UpdatedAtLt is an autogenerated method // nolint: dupl func (qs BlogQuerySet) UpdatedAtLt(updatedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("updated_at < ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "< ?"), updatedAt)) } // UpdatedAtLte is an autogenerated method // nolint: dupl func (qs BlogQuerySet) UpdatedAtLte(updatedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("updated_at <= ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "<= ?"), updatedAt)) } // UpdatedAtNe is an autogenerated method // nolint: dupl func (qs BlogQuerySet) UpdatedAtNe(updatedAt time.Time) BlogQuerySet { - return qs.w(qs.db.Where("updated_at != ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "!= ?"), updatedAt)) } // SetCreatedAt is an autogenerated method @@ -647,43 +647,43 @@ func (qs CheckReservedKeywordsQuerySet) One(ret *CheckReservedKeywords) error { // OrderAscByStruct is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) OrderAscByStruct() CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Order("struct ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("struct")))) } // OrderAscByType is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) OrderAscByType() CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Order("type ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("type")))) } // OrderDescByStruct is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) OrderDescByStruct() CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Order("struct DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("struct")))) } // OrderDescByType is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) OrderDescByType() CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Order("type DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("type")))) } // StructEq is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) StructEq(structValue int) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("struct = ?", structValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("struct"), "= ?"), structValue)) } // StructGt is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) StructGt(structValue int) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("struct > ?", structValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("struct"), "> ?"), structValue)) } // StructGte is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) StructGte(structValue int) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("struct >= ?", structValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("struct"), ">= ?"), structValue)) } // StructIn is an autogenerated method @@ -693,25 +693,25 @@ func (qs CheckReservedKeywordsQuerySet) StructIn(structValue ...int) CheckReserv qs.db.AddError(errors.New("must at least pass one structValue in StructIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("struct IN (?)", structValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("struct"), "IN"), structValue)) } // StructLt is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) StructLt(structValue int) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("struct < ?", structValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("struct"), "< ?"), structValue)) } // StructLte is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) StructLte(structValue int) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("struct <= ?", structValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("struct"), "<= ?"), structValue)) } // StructNe is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) StructNe(structValue int) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("struct != ?", structValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("struct"), "!= ?"), structValue)) } // StructNotIn is an autogenerated method @@ -721,25 +721,25 @@ func (qs CheckReservedKeywordsQuerySet) StructNotIn(structValue ...int) CheckRes qs.db.AddError(errors.New("must at least pass one structValue in StructNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("struct NOT IN (?)", structValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("struct"), "NOT IN"), structValue)) } // TypeEq is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) TypeEq(typeValue string) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("type = ?", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("type"), "= ?"), typeValue)) } // TypeGt is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) TypeGt(typeValue string) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("type > ?", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("type"), "> ?"), typeValue)) } // TypeGte is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) TypeGte(typeValue string) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("type >= ?", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("type"), ">= ?"), typeValue)) } // TypeIn is an autogenerated method @@ -749,31 +749,31 @@ func (qs CheckReservedKeywordsQuerySet) TypeIn(typeValue ...string) CheckReserve qs.db.AddError(errors.New("must at least pass one typeValue in TypeIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("type IN (?)", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("type"), "IN"), typeValue)) } // TypeLike is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) TypeLike(typeValue string) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("type LIKE ?", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("type"), "LIKE ?"), typeValue)) } // TypeLt is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) TypeLt(typeValue string) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("type < ?", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("type"), "< ?"), typeValue)) } // TypeLte is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) TypeLte(typeValue string) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("type <= ?", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("type"), "<= ?"), typeValue)) } // TypeNe is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) TypeNe(typeValue string) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("type != ?", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("type"), "!= ?"), typeValue)) } // TypeNotIn is an autogenerated method @@ -783,13 +783,13 @@ func (qs CheckReservedKeywordsQuerySet) TypeNotIn(typeValue ...string) CheckRese qs.db.AddError(errors.New("must at least pass one typeValue in TypeNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("type NOT IN (?)", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("type"), "NOT IN"), typeValue)) } // TypeNotlike is an autogenerated method // nolint: dupl func (qs CheckReservedKeywordsQuerySet) TypeNotlike(typeValue string) CheckReservedKeywordsQuerySet { - return qs.w(qs.db.Where("type NOT LIKE ?", typeValue)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("type"), "NOT LIKE ?"), typeValue)) } // SetStruct is an autogenerated method @@ -931,13 +931,13 @@ func (qs PostQuerySet) All(ret *[]Post) error { // BlogIsNotNull is an autogenerated method // nolint: dupl func (qs PostQuerySet) BlogIsNotNull() PostQuerySet { - return qs.w(qs.db.Where("blog IS NOT NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("blog"), "IS NOT NULL"))) } // BlogIsNull is an autogenerated method // nolint: dupl func (qs PostQuerySet) BlogIsNull() PostQuerySet { - return qs.w(qs.db.Where("blog IS NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("blog"), "IS NULL"))) } // Count is an autogenerated method @@ -951,37 +951,37 @@ func (qs PostQuerySet) Count() (int, error) { // CreatedAtEq is an autogenerated method // nolint: dupl func (qs PostQuerySet) CreatedAtEq(createdAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("created_at = ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "= ?"), createdAt)) } // CreatedAtGt is an autogenerated method // nolint: dupl func (qs PostQuerySet) CreatedAtGt(createdAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("created_at > ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "> ?"), createdAt)) } // CreatedAtGte is an autogenerated method // nolint: dupl func (qs PostQuerySet) CreatedAtGte(createdAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("created_at >= ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), ">= ?"), createdAt)) } // CreatedAtLt is an autogenerated method // nolint: dupl func (qs PostQuerySet) CreatedAtLt(createdAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("created_at < ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "< ?"), createdAt)) } // CreatedAtLte is an autogenerated method // nolint: dupl func (qs PostQuerySet) CreatedAtLte(createdAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("created_at <= ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "<= ?"), createdAt)) } // CreatedAtNe is an autogenerated method // nolint: dupl func (qs PostQuerySet) CreatedAtNe(createdAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("created_at != ?", createdAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "!= ?"), createdAt)) } // Delete is an autogenerated method @@ -1007,49 +1007,49 @@ func (qs PostQuerySet) DeleteNumUnscoped() (int64, error) { // DeletedAtEq is an autogenerated method // nolint: dupl func (qs PostQuerySet) DeletedAtEq(deletedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("deleted_at = ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "= ?"), deletedAt)) } // DeletedAtGt is an autogenerated method // nolint: dupl func (qs PostQuerySet) DeletedAtGt(deletedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("deleted_at > ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "> ?"), deletedAt)) } // DeletedAtGte is an autogenerated method // nolint: dupl func (qs PostQuerySet) DeletedAtGte(deletedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("deleted_at >= ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), ">= ?"), deletedAt)) } // DeletedAtIsNotNull is an autogenerated method // nolint: dupl func (qs PostQuerySet) DeletedAtIsNotNull() PostQuerySet { - return qs.w(qs.db.Where("deleted_at IS NOT NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "IS NOT NULL"))) } // DeletedAtIsNull is an autogenerated method // nolint: dupl func (qs PostQuerySet) DeletedAtIsNull() PostQuerySet { - return qs.w(qs.db.Where("deleted_at IS NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "IS NULL"))) } // DeletedAtLt is an autogenerated method // nolint: dupl func (qs PostQuerySet) DeletedAtLt(deletedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("deleted_at < ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "< ?"), deletedAt)) } // DeletedAtLte is an autogenerated method // nolint: dupl func (qs PostQuerySet) DeletedAtLte(deletedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("deleted_at <= ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "<= ?"), deletedAt)) } // DeletedAtNe is an autogenerated method // nolint: dupl func (qs PostQuerySet) DeletedAtNe(deletedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("deleted_at != ?", deletedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "!= ?"), deletedAt)) } // GetDB is an autogenerated method @@ -1067,19 +1067,19 @@ func (qs PostQuerySet) GetUpdater() PostUpdater { // IDEq is an autogenerated method // nolint: dupl func (qs PostQuerySet) IDEq(ID uint) PostQuerySet { - return qs.w(qs.db.Where("id = ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "= ?"), ID)) } // IDGt is an autogenerated method // nolint: dupl func (qs PostQuerySet) IDGt(ID uint) PostQuerySet { - return qs.w(qs.db.Where("id > ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "> ?"), ID)) } // IDGte is an autogenerated method // nolint: dupl func (qs PostQuerySet) IDGte(ID uint) PostQuerySet { - return qs.w(qs.db.Where("id >= ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), ">= ?"), ID)) } // IDIn is an autogenerated method @@ -1089,25 +1089,25 @@ func (qs PostQuerySet) IDIn(ID ...uint) PostQuerySet { qs.db.AddError(errors.New("must at least pass one ID in IDIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("id IN (?)", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("id"), "IN"), ID)) } // IDLt is an autogenerated method // nolint: dupl func (qs PostQuerySet) IDLt(ID uint) PostQuerySet { - return qs.w(qs.db.Where("id < ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "< ?"), ID)) } // IDLte is an autogenerated method // nolint: dupl func (qs PostQuerySet) IDLte(ID uint) PostQuerySet { - return qs.w(qs.db.Where("id <= ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "<= ?"), ID)) } // IDNe is an autogenerated method // nolint: dupl func (qs PostQuerySet) IDNe(ID uint) PostQuerySet { - return qs.w(qs.db.Where("id != ?", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "!= ?"), ID)) } // IDNotIn is an autogenerated method @@ -1117,7 +1117,7 @@ func (qs PostQuerySet) IDNotIn(ID ...uint) PostQuerySet { qs.db.AddError(errors.New("must at least pass one ID in IDNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("id NOT IN (?)", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("id"), "NOT IN"), ID)) } // Limit is an autogenerated method @@ -1141,103 +1141,103 @@ func (qs PostQuerySet) One(ret *Post) error { // OrderAscByCreatedAt is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderAscByCreatedAt() PostQuerySet { - return qs.w(qs.db.Order("created_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("created_at")))) } // OrderAscByDeletedAt is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderAscByDeletedAt() PostQuerySet { - return qs.w(qs.db.Order("deleted_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("deleted_at")))) } // OrderAscByID is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderAscByID() PostQuerySet { - return qs.w(qs.db.Order("id ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("id")))) } // OrderAscByStr is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderAscByStr() PostQuerySet { - return qs.w(qs.db.Order("str ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("str")))) } // OrderAscByTitle is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderAscByTitle() PostQuerySet { - return qs.w(qs.db.Order("title ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("title")))) } // OrderAscByUpdatedAt is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderAscByUpdatedAt() PostQuerySet { - return qs.w(qs.db.Order("updated_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("updated_at")))) } // OrderDescByCreatedAt is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderDescByCreatedAt() PostQuerySet { - return qs.w(qs.db.Order("created_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("created_at")))) } // OrderDescByDeletedAt is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderDescByDeletedAt() PostQuerySet { - return qs.w(qs.db.Order("deleted_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("deleted_at")))) } // OrderDescByID is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderDescByID() PostQuerySet { - return qs.w(qs.db.Order("id DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("id")))) } // OrderDescByStr is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderDescByStr() PostQuerySet { - return qs.w(qs.db.Order("str DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("str")))) } // OrderDescByTitle is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderDescByTitle() PostQuerySet { - return qs.w(qs.db.Order("title DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("title")))) } // OrderDescByUpdatedAt is an autogenerated method // nolint: dupl func (qs PostQuerySet) OrderDescByUpdatedAt() PostQuerySet { - return qs.w(qs.db.Order("updated_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("updated_at")))) } // PreloadBlog is an autogenerated method // nolint: dupl func (qs PostQuerySet) PreloadBlog() PostQuerySet { - return qs.w(qs.db.Preload("Blog")) + return qs.w(qs.db.Preload(qs.db.Dialect().Quote("blog"))) } // PreloadUser is an autogenerated method // nolint: dupl func (qs PostQuerySet) PreloadUser() PostQuerySet { - return qs.w(qs.db.Preload("User")) + return qs.w(qs.db.Preload(qs.db.Dialect().Quote("user"))) } // StrEq is an autogenerated method // nolint: dupl func (qs PostQuerySet) StrEq(str tmp.StringDef) PostQuerySet { - return qs.w(qs.db.Where("str = ?", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("str"), "= ?"), str)) } // StrGt is an autogenerated method // nolint: dupl func (qs PostQuerySet) StrGt(str tmp.StringDef) PostQuerySet { - return qs.w(qs.db.Where("str > ?", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("str"), "> ?"), str)) } // StrGte is an autogenerated method // nolint: dupl func (qs PostQuerySet) StrGte(str tmp.StringDef) PostQuerySet { - return qs.w(qs.db.Where("str >= ?", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("str"), ">= ?"), str)) } // StrIn is an autogenerated method @@ -1247,31 +1247,31 @@ func (qs PostQuerySet) StrIn(str ...tmp.StringDef) PostQuerySet { qs.db.AddError(errors.New("must at least pass one str in StrIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("str IN (?)", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("str"), "IN"), str)) } // StrLike is an autogenerated method // nolint: dupl func (qs PostQuerySet) StrLike(str tmp.StringDef) PostQuerySet { - return qs.w(qs.db.Where("str LIKE ?", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("str"), "LIKE ?"), str)) } // StrLt is an autogenerated method // nolint: dupl func (qs PostQuerySet) StrLt(str tmp.StringDef) PostQuerySet { - return qs.w(qs.db.Where("str < ?", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("str"), "< ?"), str)) } // StrLte is an autogenerated method // nolint: dupl func (qs PostQuerySet) StrLte(str tmp.StringDef) PostQuerySet { - return qs.w(qs.db.Where("str <= ?", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("str"), "<= ?"), str)) } // StrNe is an autogenerated method // nolint: dupl func (qs PostQuerySet) StrNe(str tmp.StringDef) PostQuerySet { - return qs.w(qs.db.Where("str != ?", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("str"), "!= ?"), str)) } // StrNotIn is an autogenerated method @@ -1281,31 +1281,31 @@ func (qs PostQuerySet) StrNotIn(str ...tmp.StringDef) PostQuerySet { qs.db.AddError(errors.New("must at least pass one str in StrNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("str NOT IN (?)", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("str"), "NOT IN"), str)) } // StrNotlike is an autogenerated method // nolint: dupl func (qs PostQuerySet) StrNotlike(str tmp.StringDef) PostQuerySet { - return qs.w(qs.db.Where("str NOT LIKE ?", str)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("str"), "NOT LIKE ?"), str)) } // TitleEq is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleEq(title string) PostQuerySet { - return qs.w(qs.db.Where("title = ?", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "= ?"), title)) } // TitleGt is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleGt(title string) PostQuerySet { - return qs.w(qs.db.Where("title > ?", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "> ?"), title)) } // TitleGte is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleGte(title string) PostQuerySet { - return qs.w(qs.db.Where("title >= ?", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), ">= ?"), title)) } // TitleIn is an autogenerated method @@ -1315,43 +1315,43 @@ func (qs PostQuerySet) TitleIn(title ...string) PostQuerySet { qs.db.AddError(errors.New("must at least pass one title in TitleIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("title IN (?)", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("title"), "IN"), title)) } // TitleIsNotNull is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleIsNotNull() PostQuerySet { - return qs.w(qs.db.Where("title IS NOT NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "IS NOT NULL"))) } // TitleIsNull is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleIsNull() PostQuerySet { - return qs.w(qs.db.Where("title IS NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "IS NULL"))) } // TitleLike is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleLike(title string) PostQuerySet { - return qs.w(qs.db.Where("title LIKE ?", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "LIKE ?"), title)) } // TitleLt is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleLt(title string) PostQuerySet { - return qs.w(qs.db.Where("title < ?", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "< ?"), title)) } // TitleLte is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleLte(title string) PostQuerySet { - return qs.w(qs.db.Where("title <= ?", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "<= ?"), title)) } // TitleNe is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleNe(title string) PostQuerySet { - return qs.w(qs.db.Where("title != ?", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "!= ?"), title)) } // TitleNotIn is an autogenerated method @@ -1361,49 +1361,49 @@ func (qs PostQuerySet) TitleNotIn(title ...string) PostQuerySet { qs.db.AddError(errors.New("must at least pass one title in TitleNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("title NOT IN (?)", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("title"), "NOT IN"), title)) } // TitleNotlike is an autogenerated method // nolint: dupl func (qs PostQuerySet) TitleNotlike(title string) PostQuerySet { - return qs.w(qs.db.Where("title NOT LIKE ?", title)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("title"), "NOT LIKE ?"), title)) } // UpdatedAtEq is an autogenerated method // nolint: dupl func (qs PostQuerySet) UpdatedAtEq(updatedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("updated_at = ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "= ?"), updatedAt)) } // UpdatedAtGt is an autogenerated method // nolint: dupl func (qs PostQuerySet) UpdatedAtGt(updatedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("updated_at > ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "> ?"), updatedAt)) } // UpdatedAtGte is an autogenerated method // nolint: dupl func (qs PostQuerySet) UpdatedAtGte(updatedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("updated_at >= ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), ">= ?"), updatedAt)) } // UpdatedAtLt is an autogenerated method // nolint: dupl func (qs PostQuerySet) UpdatedAtLt(updatedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("updated_at < ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "< ?"), updatedAt)) } // UpdatedAtLte is an autogenerated method // nolint: dupl func (qs PostQuerySet) UpdatedAtLte(updatedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("updated_at <= ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "<= ?"), updatedAt)) } // UpdatedAtNe is an autogenerated method // nolint: dupl func (qs PostQuerySet) UpdatedAtNe(updatedAt time.Time) PostQuerySet { - return qs.w(qs.db.Where("updated_at != ?", updatedAt)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "!= ?"), updatedAt)) } // SetCreatedAt is an autogenerated method @@ -1606,37 +1606,37 @@ func (qs UserQuerySet) Count() (int, 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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("created_at"), "!= ?"), createdAt)) } // Delete is an autogenerated method @@ -1662,67 +1662,67 @@ func (qs UserQuerySet) DeleteNumUnscoped() (int64, 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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), ">= ?"), deletedAt)) } // DeletedAtIsNotNull is an autogenerated method // nolint: dupl func (qs UserQuerySet) DeletedAtIsNotNull() UserQuerySet { - return qs.w(qs.db.Where("deleted_at IS NOT NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "IS NOT NULL"))) } // DeletedAtIsNull is an autogenerated method // nolint: dupl func (qs UserQuerySet) DeletedAtIsNull() UserQuerySet { - return qs.w(qs.db.Where("deleted_at IS NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "IS NULL"))) } // 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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("deleted_at"), "!= ?"), deletedAt)) } // EmailEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) EmailEq(email string) UserQuerySet { - return qs.w(qs.db.Where("email = ?", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("email"), "= ?"), email)) } // EmailGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) EmailGt(email string) UserQuerySet { - return qs.w(qs.db.Where("email > ?", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("email"), "> ?"), email)) } // EmailGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) EmailGte(email string) UserQuerySet { - return qs.w(qs.db.Where("email >= ?", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("email"), ">= ?"), email)) } // EmailIn is an autogenerated method @@ -1732,31 +1732,31 @@ func (qs UserQuerySet) EmailIn(email ...string) UserQuerySet { qs.db.AddError(errors.New("must at least pass one email in EmailIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("email IN (?)", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("email"), "IN"), email)) } // EmailLike is an autogenerated method // nolint: dupl func (qs UserQuerySet) EmailLike(email string) UserQuerySet { - return qs.w(qs.db.Where("email LIKE ?", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("email"), "LIKE ?"), email)) } // EmailLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) EmailLt(email string) UserQuerySet { - return qs.w(qs.db.Where("email < ?", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("email"), "< ?"), email)) } // EmailLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) EmailLte(email string) UserQuerySet { - return qs.w(qs.db.Where("email <= ?", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("email"), "<= ?"), email)) } // EmailNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) EmailNe(email string) UserQuerySet { - return qs.w(qs.db.Where("email != ?", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("email"), "!= ?"), email)) } // EmailNotIn is an autogenerated method @@ -1766,13 +1766,13 @@ func (qs UserQuerySet) EmailNotIn(email ...string) UserQuerySet { qs.db.AddError(errors.New("must at least pass one email in EmailNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("email NOT IN (?)", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("email"), "NOT IN"), email)) } // EmailNotlike is an autogenerated method // nolint: dupl func (qs UserQuerySet) EmailNotlike(email string) UserQuerySet { - return qs.w(qs.db.Where("email NOT LIKE ?", email)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("email"), "NOT LIKE ?"), email)) } // GetDB is an autogenerated method @@ -1790,19 +1790,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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), ">= ?"), ID)) } // IDIn is an autogenerated method @@ -1812,25 +1812,25 @@ func (qs UserQuerySet) IDIn(ID ...uint) UserQuerySet { qs.db.AddError(errors.New("must at least pass one ID in IDIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("id IN (?)", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("id"), "IN"), ID)) } // 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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("id"), "!= ?"), ID)) } // IDNotIn is an autogenerated method @@ -1840,7 +1840,7 @@ func (qs UserQuerySet) IDNotIn(ID ...uint) UserQuerySet { qs.db.AddError(errors.New("must at least pass one ID in IDNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("id NOT IN (?)", ID)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("id"), "NOT IN"), ID)) } // Limit is an autogenerated method @@ -1852,19 +1852,19 @@ func (qs UserQuerySet) Limit(limit int) UserQuerySet { // NameEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) NameEq(name string) UserQuerySet { - return qs.w(qs.db.Where("name = ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("name"), "= ?"), name)) } // NameGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) NameGt(name string) UserQuerySet { - return qs.w(qs.db.Where("name > ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("name"), "> ?"), name)) } // NameGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) NameGte(name string) UserQuerySet { - return qs.w(qs.db.Where("name >= ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("name"), ">= ?"), name)) } // NameIn is an autogenerated method @@ -1874,31 +1874,31 @@ func (qs UserQuerySet) NameIn(name ...string) UserQuerySet { qs.db.AddError(errors.New("must at least pass one name in NameIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("name IN (?)", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("name"), "IN"), name)) } // NameLike is an autogenerated method // nolint: dupl func (qs UserQuerySet) NameLike(name string) UserQuerySet { - return qs.w(qs.db.Where("name LIKE ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("name"), "LIKE ?"), name)) } // NameLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) NameLt(name string) UserQuerySet { - return qs.w(qs.db.Where("name < ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("name"), "< ?"), name)) } // NameLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) NameLte(name string) UserQuerySet { - return qs.w(qs.db.Where("name <= ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("name"), "<= ?"), name)) } // NameNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) NameNe(name string) UserQuerySet { - return qs.w(qs.db.Where("name != ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("name"), "!= ?"), name)) } // NameNotIn is an autogenerated method @@ -1908,13 +1908,13 @@ func (qs UserQuerySet) NameNotIn(name ...string) UserQuerySet { qs.db.AddError(errors.New("must at least pass one name in NameNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("name NOT IN (?)", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("name"), "NOT IN"), name)) } // NameNotlike is an autogenerated method // nolint: dupl func (qs UserQuerySet) NameNotlike(name string) UserQuerySet { - return qs.w(qs.db.Where("name NOT LIKE ?", name)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("name"), "NOT LIKE ?"), name)) } // Offset is an autogenerated method @@ -1932,103 +1932,103 @@ func (qs UserQuerySet) One(ret *User) error { // OrderAscByCreatedAt is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByCreatedAt() UserQuerySet { - return qs.w(qs.db.Order("created_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("created_at")))) } // OrderAscByDeletedAt is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByDeletedAt() UserQuerySet { - return qs.w(qs.db.Order("deleted_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("deleted_at")))) } // OrderAscByEmail is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByEmail() UserQuerySet { - return qs.w(qs.db.Order("email ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("email")))) } // OrderAscByID is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByID() UserQuerySet { - return qs.w(qs.db.Order("id ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("id")))) } // OrderAscByName is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByName() UserQuerySet { - return qs.w(qs.db.Order("name ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("name")))) } // OrderAscBySurname is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscBySurname() UserQuerySet { - return qs.w(qs.db.Order("user_surname ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("user_surname")))) } // OrderAscByUpdatedAt is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderAscByUpdatedAt() UserQuerySet { - return qs.w(qs.db.Order("updated_at ASC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s ASC", qs.db.Dialect().Quote("updated_at")))) } // OrderDescByCreatedAt is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByCreatedAt() UserQuerySet { - return qs.w(qs.db.Order("created_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("created_at")))) } // OrderDescByDeletedAt is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByDeletedAt() UserQuerySet { - return qs.w(qs.db.Order("deleted_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("deleted_at")))) } // OrderDescByEmail is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByEmail() UserQuerySet { - return qs.w(qs.db.Order("email DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("email")))) } // OrderDescByID is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByID() UserQuerySet { - return qs.w(qs.db.Order("id DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("id")))) } // OrderDescByName is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByName() UserQuerySet { - return qs.w(qs.db.Order("name DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("name")))) } // OrderDescBySurname is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescBySurname() UserQuerySet { - return qs.w(qs.db.Order("user_surname DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("user_surname")))) } // OrderDescByUpdatedAt is an autogenerated method // nolint: dupl func (qs UserQuerySet) OrderDescByUpdatedAt() UserQuerySet { - return qs.w(qs.db.Order("updated_at DESC")) + return qs.w(qs.db.Order(fmt.Sprintf("%s DESC", qs.db.Dialect().Quote("updated_at")))) } // SurnameEq is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameEq(surname string) UserQuerySet { - return qs.w(qs.db.Where("user_surname = ?", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "= ?"), surname)) } // SurnameGt is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameGt(surname string) UserQuerySet { - return qs.w(qs.db.Where("user_surname > ?", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "> ?"), surname)) } // SurnameGte is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameGte(surname string) UserQuerySet { - return qs.w(qs.db.Where("user_surname >= ?", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), ">= ?"), surname)) } // SurnameIn is an autogenerated method @@ -2038,43 +2038,43 @@ func (qs UserQuerySet) SurnameIn(surname ...string) UserQuerySet { qs.db.AddError(errors.New("must at least pass one surname in SurnameIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("user_surname IN (?)", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("user_surname"), "IN"), surname)) } // SurnameIsNotNull is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameIsNotNull() UserQuerySet { - return qs.w(qs.db.Where("user_surname IS NOT NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "IS NOT NULL"))) } // SurnameIsNull is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameIsNull() UserQuerySet { - return qs.w(qs.db.Where("user_surname IS NULL")) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "IS NULL"))) } // SurnameLike is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameLike(surname string) UserQuerySet { - return qs.w(qs.db.Where("user_surname LIKE ?", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "LIKE ?"), surname)) } // SurnameLt is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameLt(surname string) UserQuerySet { - return qs.w(qs.db.Where("user_surname < ?", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "< ?"), surname)) } // SurnameLte is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameLte(surname string) UserQuerySet { - return qs.w(qs.db.Where("user_surname <= ?", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "<= ?"), surname)) } // SurnameNe is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameNe(surname string) UserQuerySet { - return qs.w(qs.db.Where("user_surname != ?", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "!= ?"), surname)) } // SurnameNotIn is an autogenerated method @@ -2084,49 +2084,49 @@ func (qs UserQuerySet) SurnameNotIn(surname ...string) UserQuerySet { qs.db.AddError(errors.New("must at least pass one surname in SurnameNotIn")) return qs.w(qs.db) } - return qs.w(qs.db.Where("user_surname NOT IN (?)", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s (?)", qs.db.Dialect().Quote("user_surname"), "NOT IN"), surname)) } // SurnameNotlike is an autogenerated method // nolint: dupl func (qs UserQuerySet) SurnameNotlike(surname string) UserQuerySet { - return qs.w(qs.db.Where("user_surname NOT LIKE ?", surname)) + return qs.w(qs.db.Where(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("user_surname"), "NOT LIKE ?"), surname)) } // 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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("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(fmt.Sprintf("%s %s", qs.db.Dialect().Quote("updated_at"), "!= ?"), updatedAt)) } // SetCreatedAt is an autogenerated method diff --git a/internal/queryset/methods/gorm.go b/internal/queryset/methods/gorm.go index cf133d7..69b14da 100644 --- a/internal/queryset/methods/gorm.go +++ b/internal/queryset/methods/gorm.go @@ -1,49 +1,67 @@ package methods -import "fmt" +import ( + "fmt" + "strings" +) func wrapToGormScope(code string) string { const tmpl = `return qs.w(%s)` return fmt.Sprintf(tmpl, code) } -// callGormMethod -type callGormMethod struct { - gormMethodName string - gormMethodArgs string - gormVarName string +// methodCall +type methodCall struct { + receiver string + methodName string + methodArgs []interface{} } -func (m *callGormMethod) setGormMethodName(name string) { - m.gormMethodName = name +func (m *methodCall) setMethodName(name string) { + m.methodName = name } -func (m callGormMethod) getGormMethodName() string { - return m.gormMethodName +func (m methodCall) getMethodName() string { + return m.methodName } -func (m callGormMethod) getGormMethodArgs() string { - return m.gormMethodArgs +func (m *methodCall) setMethodArgs(args ...interface{}) { + m.methodArgs = args } -func (m *callGormMethod) setGormMethodArgs(args string) { - m.gormMethodArgs = args +func (m methodCall) getReceiver() string { + return m.receiver } -func (m callGormMethod) getGormVarName() string { - return m.gormVarName +func (m methodCall) GetBody() string { + methodArgs := make([]string, len(m.methodArgs)) + for i, arg := range m.methodArgs { + switch argType := arg.(type) { + case string: + methodArgs[i] = argType + case methodCall: + methodArgs[i] = argType.GetBody() + default: + panic(argType) + } + } + return fmt.Sprintf("%s.%s(%s)", + m.getReceiver(), m.getMethodName(), strings.Join(methodArgs, ", ")) } -func (m callGormMethod) GetBody() string { - return fmt.Sprintf("%s.%s(%s)", - m.getGormVarName(), m.getGormMethodName(), m.getGormMethodArgs()) +func newMethodCall(receiver, methodName string, methodArgs ...interface{}) methodCall { + return methodCall{ + receiver: receiver, + methodName: methodName, + methodArgs: methodArgs, + } } -func newCallGormMethod(name, args, varName string) callGormMethod { - return callGormMethod{ - gormMethodName: name, - gormMethodArgs: args, - gormVarName: varName, +func newDBQuote(fieldName string) methodCall { + return methodCall{ + receiver: qsDbName, + methodName: "Dialect().Quote", + methodArgs: []interface{}{`"` + fieldName + `"`}, } } @@ -62,16 +80,16 @@ func newDbArgMethod() dbArgMethod { // gormErroredMethod type gormErroredMethod struct { errorRetMethod - callGormMethod + methodCall } // GetBody returns body of method func (m gormErroredMethod) GetBody() string { - return "return " + m.callGormMethod.GetBody() + ".Error" + return "return " + m.methodCall.GetBody() + ".Error" } func newGormErroredMethod(name, args, varName string) gormErroredMethod { return gormErroredMethod{ - callGormMethod: newCallGormMethod(name, args, varName), + methodCall: newMethodCall(varName, name, args), } } diff --git a/internal/queryset/methods/queryset.go b/internal/queryset/methods/queryset.go index b42395b..593358e 100644 --- a/internal/queryset/methods/queryset.go +++ b/internal/queryset/methods/queryset.go @@ -77,16 +77,11 @@ type FieldOperationNoArgsMethod struct { chainedQuerySetMethod } -func newFieldOperationNoArgsMethod(ctx QsFieldContext, transformFieldName bool) FieldOperationNoArgsMethod { - - gormArgName := ctx.fieldName() - if transformFieldName { - gormArgName = ctx.fieldDBName() - } +func newFieldOperationNoArgsMethod(ctx QsFieldContext) FieldOperationNoArgsMethod { r := FieldOperationNoArgsMethod{ onFieldMethod: ctx.onFieldMethod(), - qsCallGormMethod: newQsCallGormMethod(ctx.operationName, `"%s"`, gormArgName), + qsCallGormMethod: newQsCallGormMethod(ctx.operationName, newDBQuote(ctx.fieldDBName())), chainedQuerySetMethod: ctx.chainedQuerySetMethod(), } r.setFieldNameFirst(false) // UserPreload -> PreloadUser @@ -119,16 +114,16 @@ func newStructOperationOneArgMethod(name, argTypeName, qsTypeName string) Struct } type qsCallGormMethod struct { - callGormMethod + methodCall } func (m qsCallGormMethod) GetBody() string { - return wrapToGormScope(m.callGormMethod.GetBody()) + return wrapToGormScope(m.methodCall.GetBody()) } -func newQsCallGormMethod(name, argsFmt string, argsArgs ...interface{}) qsCallGormMethod { +func newQsCallGormMethod(name string, args ...interface{}) qsCallGormMethod { return qsCallGormMethod{ - callGormMethod: newCallGormMethod(name, fmt.Sprintf(argsFmt, argsArgs...), qsDbName), + methodCall: newMethodCall(qsDbName, name, args...), } } @@ -147,8 +142,10 @@ func NewBinaryFilterMethod(ctx QsFieldContext) BinaryFilterMethod { onFieldMethod: ctx.onFieldMethod(), oneArgMethod: newOneArgMethod(argName, ctx.fieldTypeName()), chainedQuerySetMethod: ctx.chainedQuerySetMethod(), - qsCallGormMethod: newQsCallGormMethod("Where", "\"%s %s\", %s", - ctx.fieldDBName(), getWhereCondition(ctx.operationName), argName), + qsCallGormMethod: newQsCallGormMethod("Where", + newMethodCall("fmt", "Sprintf", "\"%s %s\"", + newDBQuote(ctx.fieldDBName()), `"`+getWhereCondition(ctx.operationName)+`"`), + argName), } } @@ -179,8 +176,10 @@ func newInFilterMethodImpl(ctx QsFieldContext, operationName, sql string) InFilt onFieldMethod: ctx.onFieldMethod(), nArgsMethod: args, chainedQuerySetMethod: ctx.chainedQuerySetMethod(), - qsCallGormMethod: newQsCallGormMethod("Where", "\"%s %s (?)\", %s", - ctx.fieldDBName(), sql, argName), + qsCallGormMethod: newQsCallGormMethod("Where", + newMethodCall("fmt", "Sprintf", "\"%s %s (?)\"", + newDBQuote(ctx.fieldDBName()), `"`+sql+`"`), + argName), } } @@ -224,8 +223,9 @@ type UnaryFilterMethod struct { func newUnaryFilterMethod(ctx QsFieldContext, op string) UnaryFilterMethod { r := UnaryFilterMethod{ onFieldMethod: ctx.onFieldMethod(), - qsCallGormMethod: newQsCallGormMethod("Where", `"%s %s"`, - ctx.fieldDBName(), op), + qsCallGormMethod: newQsCallGormMethod("Where", + newMethodCall("fmt", "Sprintf", `"%s %s"`, + newDBQuote(ctx.fieldDBName()), `"`+op+`"`)), chainedQuerySetMethod: ctx.chainedQuerySetMethod(), } return r @@ -364,23 +364,23 @@ func NewCountMethod(qsTypeName string) CountMethod { // NewPreloadMethod creates new Preload method func NewPreloadMethod(ctx QsFieldContext) FieldOperationNoArgsMethod { - r := newFieldOperationNoArgsMethod(ctx.WithOperationName("Preload"), false) + r := newFieldOperationNoArgsMethod(ctx.WithOperationName("Preload")) return r } // NewOrderAscByMethod creates new OrderBy method ascending func NewOrderAscByMethod(ctx QsFieldContext) FieldOperationNoArgsMethod { - r := newFieldOperationNoArgsMethod(ctx.WithOperationName("OrderAscBy"), true) - r.setGormMethodName("Order") - r.setGormMethodArgs(fmt.Sprintf(`"%s ASC"`, ctx.fieldDBName())) + r := newFieldOperationNoArgsMethod(ctx.WithOperationName("OrderAscBy")) + r.setMethodName("Order") + r.setMethodArgs(newMethodCall("fmt", "Sprintf", `"%s ASC"`, newDBQuote(ctx.fieldDBName()))) return r } // NewOrderDescByMethod creates new OrderBy method descending func NewOrderDescByMethod(ctx QsFieldContext) FieldOperationNoArgsMethod { - r := newFieldOperationNoArgsMethod(ctx.WithOperationName("OrderDescBy"), true) - r.setGormMethodName("Order") - r.setGormMethodArgs(fmt.Sprintf(`"%s DESC"`, ctx.fieldDBName())) + r := newFieldOperationNoArgsMethod(ctx.WithOperationName("OrderDescBy")) + r.setMethodName("Order") + r.setMethodArgs(newMethodCall("fmt", "Sprintf", `"%s DESC"`, newDBQuote(ctx.fieldDBName()))) return r }