The fantastic ORM library for Golang, aims to be developer friendly
Go to file
Rataj ac07543962
Fixed error message when dialector fails to initialize (#6509)
Let's say we have a problem with DSN which leads to dialector initialize error. However DB connection is not created and for some reason line 184 error provides <nil> even though "db" doesn't exist.

Previously, this code leads to:
panic: runtime error: invalid memory address or nil pointer dereference

This fix now doesn't attempt to close non-existant database connection and instead continues, so the proper error is shown. In my case:
[error] failed to initialize database, got error default addr for network 'localhost' unknown
2023-08-20 19:46:56 +08:00
.github ci: fix mariadb mysqladmin (#6401) 2023-06-11 07:42:18 +08:00
callbacks Clear SET clause after build SQL 2023-05-15 15:43:44 +08:00
clause fix(clause): when the value of clause.Eq is an empty array, the SQL should be IN (NULL) (#6503) 2023-08-10 13:34:33 +08:00
logger add float32 test case (#6530) 2023-08-19 21:33:57 +08:00
migrator refactor: Regex description (#6507) 2023-08-07 16:35:19 +08:00
schema fix schema GetIdentityFieldValuesMap interface or ptr (#6417) 2023-08-19 21:35:14 +08:00
tests refactor: Regex description (#6507) 2023-08-07 16:35:19 +08:00
utils Fix incorrect documentation comment (has many -> has one) (#6382) 2023-06-07 15:02:30 +08:00
.gitignore Adjust ToStringKey use unpack params, fix pass []any as any in variadic function (#5500) 2022-07-14 20:05:22 +08:00
.golangci.yml feat: golangci add goimports and whitespace (#5835) 2022-11-05 08:37:37 +08:00
LICENSE renamed License to LICENSE (#6336) 2023-05-21 21:24:00 +08:00
README.md Update README 2023-04-11 13:16:25 +08:00
association.go feat: unscoped association (#5899) (#6246) 2023-05-04 19:30:45 +08:00
callbacks.go debug: use slice Stale sort (#6263) 2023-04-26 22:19:46 +08:00
chainable_api.go fix typo chainable_api.go (#6266) 2023-04-26 22:19:06 +08:00
errors.go Added support of "Violates Foreign Key Constraint" (#6329) 2023-05-21 21:27:22 +08:00
finisher_api.go fix: save with hook (#6285) (#6294) 2023-05-26 10:28:02 +08:00
go.mod Fix Save with stress tests 2023-03-02 17:22:51 +08:00
go.sum feat: rm GetDBConnWithContext method (#6535) 2023-08-19 21:33:31 +08:00
gorm.go Fixed error message when dialector fails to initialize (#6509) 2023-08-20 19:46:56 +08:00
interfaces.go feat: rm GetDBConnWithContext method (#6535) 2023-08-19 21:33:31 +08:00
migrator.go feat: migrator support table comment (#6225) 2023-05-05 15:58:27 +08:00
model.go Issue 6054: Unscoped not working with PreLoad on Joins (#6058) 2023-02-18 09:06:43 +08:00
prepare_stmt.go feat: rm GetDBConnWithContext method (#6535) 2023-08-19 21:33:31 +08:00
scan.go feat: support nested join (#6067) 2023-03-10 17:21:56 +08:00
soft_delete.go fix: support zeroValue tag on DeletedAt (#6011) 2023-02-01 14:40:55 +08:00
statement.go fix cond in scopes (#6152) 2023-04-11 12:01:23 +08:00
statement_test.go fix: ignore nil query (#6021) 2023-02-02 17:54:51 +08:00

README.md

GORM

The fantastic ORM library for Golang, aims to be developer friendly.

go report card test status MIT license Go.Dev reference

Overview

  • Full-Featured ORM
  • Associations (Has One, Has Many, Belongs To, Many To Many, Polymorphism, Single-table inheritance)
  • Hooks (Before/After Create/Save/Update/Delete/Find)
  • Eager loading with Preload, Joins
  • Transactions, Nested Transactions, Save Point, RollbackTo to Saved Point
  • Context, Prepared Statement Mode, DryRun Mode
  • Batch Insert, FindInBatches, Find To Map
  • SQL Builder, Upsert, Locking, Optimizer/Index/Comment Hints, NamedArg, Search/Update/Create with SQL Expr
  • Composite Primary Key
  • Auto Migrations
  • Logger
  • Extendable, flexible plugin API: Database Resolver (Multiple Databases, Read/Write Splitting) / Prometheus…
  • Every feature comes with tests
  • Developer Friendly

Getting Started

Contributing

You can help to deliver a better GORM, check out things you can do

Contributors

Thank you for contributing to the GORM framework!

License

© Jinzhu, 2013~time.Now

Released under the MIT License