forked from mirror/gorm
1.8 KiB
1.8 KiB
GORM
The fantastic ORM library for Golang, aims to be developer friendly.
Overview
- Full-Featured ORM (almost)
- Chainable API
- Auto Migrations
- Relations (Has One, Has Many, Belongs To, Many To Many, Polymorphism)
- Callbacks (Before/After Create/Save/Update/Delete/Find)
- Preloading (eager loading)
- Transactions
- Embed Anonymous Struct
- Soft Deletes
- Customizable Logger
- Iteration Support via Rows
- Every feature comes with tests
- Developer Friendly
Install
go get -u github.com/jinzhu/gorm
Basic Usage
type Product struct {
gorm.Model
Code string
Price uint
}
var db *gorm.DB
func init() {
var err error
db, err = gorm.Open("sqlite", "test.db")
}
func main() {
db.Create(&Product{Code: "L1212", Price: 1000})
var product Product
db.First(&product, 1) // find product with id 1
db.First(&product, "code = ?", "L1212") // find product with code l1212
db.Model(&product).Update("Price", 2000) // update product's price to 2000
db.Delete(&product) // delete product
}
Author
jinzhu
Contributors
https://github.com/jinzhu/gorm/graphs/contributors
License
Released under the MIT License.