Go 的全堆棧 Web 框架,Revel v0.11.3 發布

jopen 9年前發布 | 7K 次閱讀 Revel

Revel 是 Go 語言的框架,其思路完全來自 Java 的 Play Framework。

控制器示例:

// app/controllers/app.go

type Application struct {
    *rev.Controller
}

func (c Application) Register() rev.Result {
    title := "Register"
    return c.Render(title)
}

func (c Application) SaveUser(user models.User, verifyPassword string) rev.Result {
    c.Validation.Required(verifyPassword).Key("verifyPassword")
    c.Validation.Required(verifyPassword == user.Password).Key("verifyPassword").
        Message("Password does not match")
    user.Validate(c.Validation)

    if c.Validation.HasErrors() {
        c.Validation.Keep()
        c.FlashParams()
        return c.Redirect(Application.Register)
    }

    _, err := c.Txn.Exec("insert into User (Username, Password, Name) values (?, ?, ?)",
        user.Username, user.Password, user.Name)
    if err != nil {
        panic(err)
    }

    c.Session["user"] = user.Username
    c.Flash.Success("Welcome, " + user.Name)
    return c.Redirect(Hotels.Index)
}

Revel v0.11.3 發布,此版本是個小的 bug 修復版本:修復了 Revel v0.11.2 一個關鍵的 bug (#824)。

強烈建議每位用戶使用最新版本的 Revel 重建項目:

$ go get -u github.com/revel/cmd/revel

$ revel build github.com/myusername/myproject /path/to/destination/folder

此版本現已提供下載:

https://github.com/revel/revel/archive/v0.11.3.zip

https://github.com/revel/revel/archive/v0.11.3.tar.gz

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!