From bbe85d773f8a96a98400f324c35761b693deea9e Mon Sep 17 00:00:00 2001 From: Mischa Poslawsky Date: Fri, 3 May 2024 16:14:46 +0200 Subject: [PATCH] fix: restore explicit column: name override Accidentally removed in commit 9052fc4cdf3a1e06facae872d0f2c12d0b1e5bfb. --- internal/dbtest/query_test.go | 11 +++++++++++ .../dbtest/testdata/snapshots/TestQuery-mariadb-167 | 1 + .../dbtest/testdata/snapshots/TestQuery-mssql2019-167 | 1 + .../dbtest/testdata/snapshots/TestQuery-mysql5-167 | 1 + .../dbtest/testdata/snapshots/TestQuery-mysql8-167 | 1 + internal/dbtest/testdata/snapshots/TestQuery-pg-167 | 1 + internal/dbtest/testdata/snapshots/TestQuery-pgx-167 | 1 + .../dbtest/testdata/snapshots/TestQuery-sqlite-167 | 1 + schema/table.go | 4 ++++ 9 files changed, 22 insertions(+) create mode 100644 internal/dbtest/testdata/snapshots/TestQuery-mariadb-167 create mode 100644 internal/dbtest/testdata/snapshots/TestQuery-mssql2019-167 create mode 100644 internal/dbtest/testdata/snapshots/TestQuery-mysql5-167 create mode 100644 internal/dbtest/testdata/snapshots/TestQuery-mysql8-167 create mode 100644 internal/dbtest/testdata/snapshots/TestQuery-pg-167 create mode 100644 internal/dbtest/testdata/snapshots/TestQuery-pgx-167 create mode 100644 internal/dbtest/testdata/snapshots/TestQuery-sqlite-167 diff --git a/internal/dbtest/query_test.go b/internal/dbtest/query_test.go index 00f6636d..f232d77e 100644 --- a/internal/dbtest/query_test.go +++ b/internal/dbtest/query_test.go @@ -1545,6 +1545,17 @@ func TestQuery(t *testing.T) { return db.NewInsert().Model(new(Model)) }, }, + { + id: 167, + query: func(db *bun.DB) schema.QueryAppender { + // specified option names + type Model struct { + bun.BaseModel `bun:"table:table"` + IsDefault bool `bun:"column:default"` + } + return db.NewInsert().Model(new(Model)) + }, + }, } timeRE := regexp.MustCompile(`'2\d{3}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(\.\d+)?(\+\d{2}:\d{2})?'`) diff --git a/internal/dbtest/testdata/snapshots/TestQuery-mariadb-167 b/internal/dbtest/testdata/snapshots/TestQuery-mariadb-167 new file mode 100644 index 00000000..75a22a89 --- /dev/null +++ b/internal/dbtest/testdata/snapshots/TestQuery-mariadb-167 @@ -0,0 +1 @@ +INSERT INTO `table` (`default`) VALUES (FALSE) diff --git a/internal/dbtest/testdata/snapshots/TestQuery-mssql2019-167 b/internal/dbtest/testdata/snapshots/TestQuery-mssql2019-167 new file mode 100644 index 00000000..31c90bb0 --- /dev/null +++ b/internal/dbtest/testdata/snapshots/TestQuery-mssql2019-167 @@ -0,0 +1 @@ +INSERT INTO "table" ("default") VALUES (0) diff --git a/internal/dbtest/testdata/snapshots/TestQuery-mysql5-167 b/internal/dbtest/testdata/snapshots/TestQuery-mysql5-167 new file mode 100644 index 00000000..75a22a89 --- /dev/null +++ b/internal/dbtest/testdata/snapshots/TestQuery-mysql5-167 @@ -0,0 +1 @@ +INSERT INTO `table` (`default`) VALUES (FALSE) diff --git a/internal/dbtest/testdata/snapshots/TestQuery-mysql8-167 b/internal/dbtest/testdata/snapshots/TestQuery-mysql8-167 new file mode 100644 index 00000000..75a22a89 --- /dev/null +++ b/internal/dbtest/testdata/snapshots/TestQuery-mysql8-167 @@ -0,0 +1 @@ +INSERT INTO `table` (`default`) VALUES (FALSE) diff --git a/internal/dbtest/testdata/snapshots/TestQuery-pg-167 b/internal/dbtest/testdata/snapshots/TestQuery-pg-167 new file mode 100644 index 00000000..33c77f71 --- /dev/null +++ b/internal/dbtest/testdata/snapshots/TestQuery-pg-167 @@ -0,0 +1 @@ +INSERT INTO "table" ("default") VALUES (FALSE) diff --git a/internal/dbtest/testdata/snapshots/TestQuery-pgx-167 b/internal/dbtest/testdata/snapshots/TestQuery-pgx-167 new file mode 100644 index 00000000..33c77f71 --- /dev/null +++ b/internal/dbtest/testdata/snapshots/TestQuery-pgx-167 @@ -0,0 +1 @@ +INSERT INTO "table" ("default") VALUES (FALSE) diff --git a/internal/dbtest/testdata/snapshots/TestQuery-sqlite-167 b/internal/dbtest/testdata/snapshots/TestQuery-sqlite-167 new file mode 100644 index 00000000..33c77f71 --- /dev/null +++ b/internal/dbtest/testdata/snapshots/TestQuery-sqlite-167 @@ -0,0 +1 @@ +INSERT INTO "table" ("default") VALUES (FALSE) diff --git a/schema/table.go b/schema/table.go index 0a23156a..8544fa44 100644 --- a/schema/table.go +++ b/schema/table.go @@ -423,6 +423,10 @@ func (t *Table) newField(sf reflect.StructField, tag tagparser.Tag) *Field { sqlName = tag.Name } + if s, ok := tag.Option("column"); ok { + sqlName = s + } + for name := range tag.Options { if !isKnownFieldOption(name) { internal.Warn.Printf("%s.%s has unknown tag option: %q", t.TypeName, sf.Name, name)