Skip to content

Instantly share code, notes, and snippets.

@jakejscott
Last active December 29, 2015 12:09
Show Gist options
  • Save jakejscott/7668331 to your computer and use it in GitHub Desktop.
Save jakejscott/7668331 to your computer and use it in GitHub Desktop.
martini form and render example
<!DOCTYPE html>
<html>
<head>
<title></title>
</head>
<body>
<h1>Title: {{.Title}}</h1>
<p>Content: {{.Content}}</p>
<form action="/blog-post" method="post">
<div>
<label>Title</label>
<input type="text" name="title" value="{{.Title}}" />
</div>
<div>
<label>Content</label>
<input type="text" name="content" value="{{.Content}}" />
</div>
<input type="submit" value="Save" />
</form>
</body>
</html>
package main
import "github.com/codegangsta/martini"
import "github.com/codegangsta/martini-contrib/render"
import "github.com/codegangsta/martini-contrib/form"
type BlogPost struct {
Title string `form:"title,required"`
Content string `form:"content"`
}
func main() {
m := martini.Classic()
m.Use(render.Renderer("templates"))
m.Get("/", func(r render.Render) {
r.HTML(200, "blog-post", &BlogPost{})
})
m.Post("/blog-post", form.Form(&BlogPost{}), func(blogpost *BlogPost, r render.Render) {
r.HTML(200, "blog-post", blogpost)
})
m.Run()
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment