快速开始-Pop
Buffalo默认包含了Pop包,Pop使用绝对NB的github.com/jmoiron/sqlx库,提供了一些数据库操作常见的模式和流程。
Pop是一个ORM库,使得数据迁移,CRUD操作都非常简单。
Pop默认支持Ruby的ActiveRecord的约定。这个意味着:
- 表结构上必须具有“id”列,相应的结构必须有“ID”字段
- 如果表结构中有created_at列,结构中有类型是time.Time的CreatedAt字段,那么在数据库记录插入的时候会自动赋值。
- 如果表结构中有updated_at列,结构中有类型是time.Time的UpdatedAt字段,那么在数据库记录更新的时候会自动赋值。
- 默认数据库表名称是结构名称的小写,下划线格式的复数形式。比如
User{}
对应users
,FooBar{}
对应的foo_bars
。
Buffalo深度集成了Pop,它可以帮助我们生成正常所需的所有东西。当然如果愿意,也仍然可以使用其他ORM包。
支持的数据库
- PostgreSQL(> = 9.3)
- CockroachDB(> = 1.1.1)
- MySQL(> = 5.7)
- SQLite3(> = 3.x)
安装
$ go get github.com/gobuffalo/pop / ...