Skip to content

Instantly share code, notes, and snippets.

@defunkt
Created May 27, 2010 01:41

Revisions

  1. defunkt created this gist May 27, 2010.
    30 changes: 30 additions & 0 deletions layout.rb
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,30 @@
    require 'mustache'

    class Layout < Mustache
    self.template = "Header
    {{{yield}}}
    Footer"
    end

    class Index < Mustache
    self.template = "The Index."
    end

    class Profile < Mustache
    self.template = "The Profile."
    end


    def render(klass)
    view = Layout.new
    view[:yield] = klass.render
    view.render
    end

    puts "Index:"
    puts render(Index)

    puts

    puts "Profile:"
    puts render(Profile)