The fantastic ORM library for Golang, aims to be developer friendly
Go to file
mohammad ali 26663ab9bf
max identifier length changed to 63 (#6337)
* max identifier length changed to 63

* default maxIdentifierLength is 64

* renamed License to LICENSE (#6336)

* Added support of "Violates Foreign Key Constraint" (#6329)

* Added support of "Violates Foreign Key Constraint"

Updated the translator and added the support of "foreign key constraint violation". For this, this error type is needed here.

* changed the description of ErrForeignKeyViolated

* refactor: error translator test (#6350)

Co-authored-by: Saeid Saeidee <s.saeidee@sensysgatso.com>

* fix(nested transaction): SavePoint SQL Statement not support in Prepared Statements (#6220)

* test: add nested transaction and prepareStmt coexist test case

note: please test in the MySQL environment

Change-Id: I0db32adc5f74b0d443e98943d3b182236583b959
Signed-off-by: 王柳洋 <wangliuyang.520@bytedance.com>

* fix(nested transaction): SavePoint SQL Statement not support in Prepared Statements

1. SavetPoint SQL Statement not support in Prepared Statements
 e.g. see mysql8.0 doc: https://dev.mysql.com/doc/refman/8.0/en/sql-prepared-statements.html

Change-Id: I082012db9b140e8ec69764c633724665cc802692
Signed-off-by: 王柳洋 <wangliuyang.520@bytedance.com>

* revert(transaction_api): remove savepoint name pool,meaningless

Change-Id: I84aa9924fc54612005a81c83d66fdf8968ee56ad
Signed-off-by: 王柳洋 <wangliuyang.520@bytedance.com>

---------

Signed-off-by: 王柳洋 <wangliuyang.520@bytedance.com>
Co-authored-by: 王柳洋 <wangliuyang.520@bytedance.com>

* fix: save with hook (#6285) (#6294)

---------

Signed-off-by: 王柳洋 <wangliuyang.520@bytedance.com>
Co-authored-by: Avinaba Bhattacharjee <avinababhattacharjee2002@gmail.com>
Co-authored-by: Muhammad Amir Ejaz <37077032+codingamir@users.noreply.github.com>
Co-authored-by: Saeid <sk.saeidee@yahoo.com>
Co-authored-by: Saeid Saeidee <s.saeidee@sensysgatso.com>
Co-authored-by: wangliuyang <54885906+wangliuyang520@users.noreply.github.com>
Co-authored-by: 王柳洋 <wangliuyang.520@bytedance.com>
Co-authored-by: black-06 <hello.bug@foxmail.com>
2023-05-30 10:00:48 +08:00
.github chore(deps): bump actions/stale from 7 to 8 (#6190) 2023-04-11 10:27:05 +08:00
callbacks Clear SET clause after build SQL 2023-05-15 15:43:44 +08:00
clause fix: `limit(0).offset(0)` return all data (#6191) 2023-04-11 10:25:47 +08:00
logger Upgrade tests deps 2023-01-01 22:22:08 +08:00
migrator feat: migrator support table comment (#6225) 2023-05-05 15:58:27 +08:00
schema max identifier length changed to 63 (#6337) 2023-05-30 10:00:48 +08:00
tests fix: save with hook (#6285) (#6294) 2023-05-26 10:28:02 +08:00
utils feat: support nested join (#6067) 2023-03-10 17:21:56 +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 Fix Save with stress tests 2023-03-02 17:22:51 +08:00
gorm.go max identifier length changed to 63 (#6337) 2023-05-30 10:00:48 +08:00
interfaces.go feat: Unique Constraint Violation error translator for different drivers (#6004) 2023-03-06 14:03: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 cleanup(prepare_stmt.go): unnecessary map delete (#5849) 2022-11-13 11:12:09 +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