예제 #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
}