The fantastic ORM library for Golang, aims to be developer friendly
Go to file
maddie 012d147974 Improve preload speed (#2058)
All credits to @vanjapt who came up with this patch.

Closes #1672
2018-09-10 06:45:55 +08:00
.github Simplify GitHub templates 2018-02-10 13:55:11 +08:00
dialects Adding json type for mssql dialect, similar to postgres.Jsonb (#1934) 2018-07-27 07:30:57 +08:00
.codeclimate.yml Add codeclimate 2015-08-22 08:46:46 +08:00
.gitignore Update README 2016-02-29 22:06:15 +08:00
License Add MIT License file 2015-01-05 08:59:18 +08:00
README.md Update README 2018-02-17 00:33:52 +08:00
association.go Refactor self referencing m2m support 2018-02-10 21:21:50 +08:00
association_test.go Add tag association_autoupdate, association_autocreate, association_save_reference support 2018-02-10 17:34:02 +08:00
callback.go Use log.PrintX instead of fmt.PrintX (#1634) 2017-10-10 08:04:23 -05:00
callback_create.go Don't save ignored fields into database 2018-09-10 06:03:41 +08:00
callback_delete.go Fix customize DeletedAt's column name 2017-02-01 21:33:36 +08:00
callback_query.go Refactor preloading many2many for auto preload 2018-02-10 00:07:16 +08:00
callback_query_preload.go Improve preload speed (#2058) 2018-09-10 06:45:55 +08:00
callback_row_query.go Query Row, Rows inside RowQuery callbacks 2017-01-15 18:03:12 +08:00
callback_save.go save_associations:true should store related item (#2067) 2018-09-10 06:25:26 +08:00
callback_system_test.go Rename test files 2016-03-08 22:00:15 +08:00
callback_update.go Sort column names before generating SQL in `DB.UpdateColumns` (#1734) 2018-02-10 14:26:01 +08:00
callbacks_test.go update tests 2014-08-28 16:14:44 +08:00
create_test.go Fix insert with default value for mysql 2018-02-12 17:39:34 +08:00
customize_column_test.go Add more tests for self-referencing many2many relationship 2018-02-10 22:14:18 +08:00
delete_test.go Fix customize DeletedAt's column name 2017-02-01 21:33:36 +08:00
dialect.go Adding GetDialect function (#1869) 2018-05-02 09:38:51 -05:00
dialect_common.go Fix insert with default value for mysql 2018-02-12 17:39:34 +08:00
dialect_mysql.go Fix insert with default value for mysql 2018-02-12 17:39:34 +08:00
dialect_postgres.go Add new tag "not_auto_increment" to set a column can auto increase or not 2018-02-10 08:18:35 +08:00
dialect_sqlite3.go Add new tag "not_auto_increment" to set a column can auto increase or not 2018-02-10 08:18:35 +08:00
docker-compose.yml Setup test env 2018-02-10 11:07:07 +08:00
embedded_struct_test.go Fix support embedded pointer type struct, close #1450 2018-02-13 10:00:18 +08:00
errors.go doc: document ErrRecordNotFound error more clear (#2015) 2018-08-19 07:14:33 +08:00
errors_test.go Make gorm.Errors available for use outside gorm 2016-10-25 11:22:50 -05:00
field.go Print warning message when using unaddressable value with Update 2016-04-04 21:33:11 +08:00
field_test.go scope.Fields() return slice of *Field 2016-03-07 14:25:41 +08:00
interface.go Replace all use of *sql.DB with sqlCommon 2017-03-14 17:02:14 -04:00
join_table_handler.go Call DefaultTableNameHandler for JoinTableHandler's table 2018-02-12 09:43:28 +08:00
join_table_test.go mysql only accept offset with limit together 2017-07-03 11:26:31 +08:00
logger.go Print affected rows (#1541) 2017-07-23 16:04:22 +08:00
main.go Use sync.Map for DB.values (#2064) 2018-09-10 06:26:29 +08:00
main_test.go save_associations:true should store related item (#2067) 2018-09-10 06:25:26 +08:00
migration_test.go save_associations:true should store related item (#2067) 2018-09-10 06:25:26 +08:00
model.go Rename test files 2016-03-08 22:00:15 +08:00
model_struct.go added naming strategy option for db, table and column names (#2040) 2018-09-10 05:52:20 +08:00
multi_primary_keys_test.go Fix tests with mssql 2017-03-22 23:50:42 +08:00
naming.go added naming strategy option for db, table and column names (#2040) 2018-09-10 05:52:20 +08:00
naming_test.go added naming strategy option for db, table and column names (#2040) 2018-09-10 05:52:20 +08:00
pointer_test.go Fix some go vet/lint reports 2016-01-15 21:16:48 +08:00
polymorphic_test.go Refactor named value support for PolymorphicType 2016-10-06 20:33:48 +08:00
preload_test.go Setting gorm:auto_preload to false now prevents preloading (#2031) 2018-08-19 07:11:27 +08:00
query_test.go Fix typo in query_test (#1977) 2018-07-27 07:38:02 +08:00
scaner_test.go Fix tests with mssql 2017-03-22 23:50:42 +08:00
scope.go Fix scanning identical column names occurring >2 times (#2080) 2018-09-10 06:12:58 +08:00
scope_test.go Refactor fix valuer 2018-02-11 12:48:08 +08:00
search.go Do not ignore order on distinct query (#1570) 2017-09-04 22:35:37 +08:00
search_test.go Add SelectAttrs, OmitAttrs 2015-03-12 15:50:38 +08:00
test_all.sh Set AutoIncrement to false with tag 2018-02-10 08:24:39 +08:00
update_test.go Fixing 4 typos in comments and gofmt -s in all files 2017-02-10 16:16:38 -02:00
utils.go for go1.11 go mod (#2072) 2018-09-10 06:14:05 +08:00
wercker.yml Remove mysql8 from CI 2018-02-27 10:48:59 +08:00

README.md

GORM

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

go report card wercker status Join the chat at https://gitter.im/jinzhu/gorm 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