cloned from https://github.com/jinzhu/gorm

Emir Beganović 81c17a7e25 Revert "Fix #2517 : Check for incomplete parentheses to prevent SQL injection." (#2674) %!s(int64=4) %!d(string=hai) anos
.github 21fb3ae1fe Simplify GitHub templates %!s(int64=6) %!d(string=hai) anos
dialects 0c98e7d712 Fixed import formatting to match goimports (#2568) %!s(int64=4) %!d(string=hai) anos
.gitignore b00248862a Enable codecov %!s(int64=5) %!d(string=hai) anos
License 1b4490fd47 Add MIT License file %!s(int64=9) %!d(string=hai) anos
README.md 206174c932 Change gorm.io links to https %!s(int64=5) %!d(string=hai) anos
association.go 50c61291de add comment (#2163) %!s(int64=5) %!d(string=hai) anos
association_test.go b2b568daa8 Add tag association_autoupdate, association_autocreate, association_save_reference support %!s(int64=6) %!d(string=hai) anos
callback.go d5cafb5db1 Fix CallbackProcessor.Get() for removed or replaced same name callback (#2548) %!s(int64=4) %!d(string=hai) anos
callback_create.go 712c465560 add an override on the DB instance instead of using the global NowFunc. (#2142) %!s(int64=5) %!d(string=hai) anos
callback_delete.go 13f19a5036 Uncapitalize error strings (#2533) %!s(int64=4) %!d(string=hai) anos
callback_query.go 712c465560 add an override on the DB instance instead of using the global NowFunc. (#2142) %!s(int64=5) %!d(string=hai) anos
callback_query_preload.go 2fb2c0d3b2 return empty slice for many2many if no asscociation was found %!s(int64=5) %!d(string=hai) anos
callback_row_query.go adc8e9b706 apply gorm:query_option in Count() %!s(int64=5) %!d(string=hai) anos
callback_save.go 123d4f50ef lock TagSettings structure when modified (#1796) %!s(int64=5) %!d(string=hai) anos
callback_system_test.go 8b127471f1 Pass logger into Callback{} so that logs are printed consistently %!s(int64=5) %!d(string=hai) anos
callback_update.go 13f19a5036 Uncapitalize error strings (#2533) %!s(int64=4) %!d(string=hai) anos
callbacks_test.go d5cafb5db1 Fix CallbackProcessor.Get() for removed or replaced same name callback (#2548) %!s(int64=4) %!d(string=hai) anos
create_test.go 712c465560 add an override on the DB instance instead of using the global NowFunc. (#2142) %!s(int64=5) %!d(string=hai) anos
customize_column_test.go 14e0507fd2 fix the table name of many2many %!s(int64=5) %!d(string=hai) anos
delete_test.go e4b130d2d7 Fix customize DeletedAt's column name %!s(int64=7) %!d(string=hai) anos
dialect.go 09a868b381 Handle syntax to specify an index prefix length %!s(int64=5) %!d(string=hai) anos
dialect_common.go 09a868b381 Handle syntax to specify an index prefix length %!s(int64=5) %!d(string=hai) anos
dialect_mysql.go 09a868b381 Handle syntax to specify an index prefix length %!s(int64=5) %!d(string=hai) anos
dialect_postgres.go 123d4f50ef lock TagSettings structure when modified (#1796) %!s(int64=5) %!d(string=hai) anos
dialect_sqlite3.go 123d4f50ef lock TagSettings structure when modified (#1796) %!s(int64=5) %!d(string=hai) anos
docker-compose.yml e0f9087c8d Setup test env %!s(int64=6) %!d(string=hai) anos
embedded_struct_test.go 67c4280c57 Fix support embedded pointer type struct, close #1450 %!s(int64=6) %!d(string=hai) anos
errors.go 447d578628 amended comments in error.go for clarity and grammar; for more polish when using IDEs (e.g. VSCODE) that show comments as help text (#2182) %!s(int64=5) %!d(string=hai) anos
errors_test.go c063624c91 Make gorm.Errors available for use outside gorm %!s(int64=7) %!d(string=hai) anos
field.go 472c70caa4 Check valuer interface before scan value (#2155) %!s(int64=5) %!d(string=hai) anos
field_test.go bc5d3f07a8 Removed the deps on uuid and appengine (#2354) %!s(int64=5) %!d(string=hai) anos
go.mod b954854116 bump mattn/go-sqlite3 to v1.11.0 (#2565) %!s(int64=4) %!d(string=hai) anos
go.sum b954854116 bump mattn/go-sqlite3 to v1.11.0 (#2565) %!s(int64=4) %!d(string=hai) anos
interface.go af01854d3e Add BeginTx for parity with sql.DB.BeginTx (#2227) %!s(int64=5) %!d(string=hai) anos
join_table_handler.go 49934ff3bf Call DefaultTableNameHandler for JoinTableHandler's table %!s(int64=6) %!d(string=hai) anos
join_table_test.go d395b35025 mysql only accept offset with limit together %!s(int64=6) %!d(string=hai) anos
logger.go 2a3ab99a08 fix insert timezero 0001-01-01 (#2635) %!s(int64=4) %!d(string=hai) anos
main.go beb591e642 Fix function name of comment %!s(int64=4) %!d(string=hai) anos
main_test.go 5acd5e20e6 Remove Debug mode from test code %!s(int64=5) %!d(string=hai) anos
migration_test.go 09a868b381 Handle syntax to specify an index prefix length %!s(int64=5) %!d(string=hai) anos
model.go d08894cd69 Rename test files %!s(int64=8) %!d(string=hai) anos
model_struct.go ac78f05986 Don't set primary key's HasDefaultValue to true (#2127) %!s(int64=5) %!d(string=hai) anos
multi_primary_keys_test.go 5730b92954 Fix tests with mssql %!s(int64=7) %!d(string=hai) anos
naming.go 6f58f8a52c added naming strategy option for db, table and column names (#2040) %!s(int64=5) %!d(string=hai) anos
naming_test.go 6f58f8a52c added naming strategy option for db, table and column names (#2040) %!s(int64=5) %!d(string=hai) anos
pointer_test.go 8d716be896 Fix some go vet/lint reports %!s(int64=8) %!d(string=hai) anos
polymorphic_test.go afaadc3942 Refactor named value support for PolymorphicType %!s(int64=7) %!d(string=hai) anos
preload_test.go b4927348ae gofmt %!s(int64=5) %!d(string=hai) anos
query_test.go 81c17a7e25 Revert "Fix #2517 : Check for incomplete parentheses to prevent SQL injection." (#2674) %!s(int64=4) %!d(string=hai) anos
scaner_test.go 5730b92954 Fix tests with mssql %!s(int64=7) %!d(string=hai) anos
scope.go 81c17a7e25 Revert "Fix #2517 : Check for incomplete parentheses to prevent SQL injection." (#2674) %!s(int64=4) %!d(string=hai) anos
scope_test.go 9692c599ad Fix drop table error with table options %!s(int64=5) %!d(string=hai) anos
search.go c0ac6a7d50 Do not ignore order on distinct query (#1570) %!s(int64=6) %!d(string=hai) anos
search_test.go da7830ea50 Add SelectAttrs, OmitAttrs %!s(int64=9) %!d(string=hai) anos
test_all.sh 2c68f695c3 Set AutoIncrement to false with tag %!s(int64=6) %!d(string=hai) anos
update_test.go 2cd7acefc3 Fixing 4 typos in comments and gofmt -s in all files %!s(int64=7) %!d(string=hai) anos
utils.go 26fde9110f getValueFromFields doesn't panic on nil pointers (#2021) %!s(int64=5) %!d(string=hai) anos
wercker.yml 835ca6ca93 Update wercker.yml to include mysql 8 %!s(int64=5) %!d(string=hai) anos

README.md

GORM

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

go report card wercker status codecov Open Collective Backer Open Collective Sponsor MIT license GoDoc

Overview

  • Full-Featured ORM (almost)
  • Associations (Has One, Has Many, Belongs To, Many To Many, Polymorphism)
  • Hooks (Before/After Create/Save/Update/Delete/Find)
  • Preloading (eager loading)
  • Transactions
  • Composite Primary Key
  • SQL Builder
  • Auto Migrations
  • Logger
  • Extendable, write Plugins based on GORM callbacks
  • Every feature comes with tests
  • Developer Friendly

Getting Started

Contributing

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

License

© Jinzhu, 2013~time.Now

Released under the MIT License