Cache/Actions

// app/controllers/post_controller/postcontroller.go
package postcontroller

func (c *PostsController) Show(post *Post) error {
	if c.CacheKey(post.ID, post.UpdatedAt) {
		return nil
	}
	c.Set("post", post)
	return nil
}

func (c *PostsController) Sidebar() error {
	if c.CacheKeyF("posts-sidebar", c.posts.UpdatedAt()) {
		return nil
	}
	c.NoLayout()
	c.Set("posts", c.posts.Latest())
	return c.Render("sidebar")
}