示例#1
0
文件: db.go 项目: pyanfield/revel
// Begin a transaction.
func (p DbPlugin) BeforeRequest(c *revel.Controller) {
	txn, err := Db.Begin()
	if err != nil {
		panic(err)
	}
	c.Txn = txn
}
示例#2
0
文件: db.go 项目: pyanfield/revel
// Commit the active transaction.
func (p DbPlugin) AfterRequest(c *revel.Controller) {
	if err := c.Txn.Commit(); err != nil {
		if err != sql.ErrTxDone {
			panic(err)
		}
	}
	c.Txn = nil
}