Update README

This commit is contained in:
Jinzhu 2013-11-03 11:32:25 +08:00
parent 8e3b1fd206
commit 92f790c463
1 changed files with 23 additions and 23 deletions

View File

@ -20,37 +20,17 @@ Yet Another ORM library for Go, aims for developer friendly
* Database Pool * Database Pool
* Convention Over Configuration * Convention Over Configuration
## Opening a Database
```go
db, err = Open("postgres", "user=gorm dbname=gorm sslmode=disable")
// Gorm is goroutines friendly, so you can create a global variable to keep the connection and use it everywhere like this
var DB gorm.DB
func init() {
DB, err = gorm.Open("postgres", "user=gorm dbname=gorm sslmode=disable")
if err != nil {
panic(fmt.Sprintf("Got error when connect database, the error is '%v'", err))
}
}
// Set the maximum idle database connections
db.SetPool(100)
```
## Conventions ## Conventions
```go ```go
type User struct { // TableName: `users`, gorm will pluralize struct name as table name type User struct { // TableName: `users`, gorm will pluralize struct's name as table name
Id int64 // Id: Database Primary key Id int64 // Id: Database Primary key
Birthday time.Time Birthday time.Time
Age int64 Age int64
Name string Name string
CreatedAt time.Time // Time of record is created, will be insert automatically CreatedAt time.Time // Time of record is created, will be insert automatically
UpdatedAt time.Time // Time of record is updated, will be updated automatically UpdatedAt time.Time // Time of record is updated, will be updated automatically
DeletedAt time.Time // Time of record is deleted, refer Soft Delete for more DeletedAt time.Time // Time of record is deleted, refer `Soft Delete` for more
Email []Email // Embedded structs Email []Email // Embedded structs
BillingAddress Address // Embedded struct BillingAddress Address // Embedded struct
@ -74,6 +54,26 @@ type Address struct { // TableName: `addresses`
} }
``` ```
## Opening a Database
```go
db, err = Open("postgres", "user=gorm dbname=gorm sslmode=disable")
// Gorm is goroutines friendly, so you can create a global variable to keep the connection and use it everywhere like this
var DB gorm.DB
func init() {
DB, err = gorm.Open("postgres", "user=gorm dbname=gorm sslmode=disable")
if err != nil {
panic(fmt.Sprintf("Got error when connect database, the error is '%v'", err))
}
}
// Set the maximum idle database connections
db.SetPool(100)
```
## Struct & Database Mapping ## Struct & Database Mapping
```go ```go
@ -528,7 +528,7 @@ func (u *User) BeforeUpdate() (err error) {
## Specify Table Name ## Specify Table Name
``` ```go
// When Create Table from struct // When Create Table from struct
db.Table("deleted_users").CreateTable(&User{}) db.Table("deleted_users").CreateTable(&User{})