Sha256: 87047e787f9e566528cebd5d1518460d03ca0833aaf5098ebb63469f340caa8a

Contents?: true

Size: 1.55 KB

Versions: 3

Compression:

Stored size: 1.55 KB

Contents

# -*- coding: utf-8 -*-

# Zobacz przykład: http://gist.github.com/38605

#gem 'rdiscount'
#gem 'sinatra'

#gem 'wbzyl-sinatra-rdiscount'
#gem 'emk-sinatra-url-for'
#gem 'wbzyl-sinatra-static-assets'

require 'rdiscount'
require 'sinatra/base'
require 'sinatra/rdiscount'

require 'sinatra/url_for'
require 'sinatra/static_assets'

module WB
  class DatamapperTutorial < Sinatra::Base
    helpers Sinatra::UrlForHelper
    helpers Sinatra::StaticAssets
    
    # disable overriding public and views dirs
    set :app_file, __FILE__
    set :static, true  
    
    # the middleware stack can be used internally as well. I'm using it for
    # sessions, logging, and methodoverride. This lets us move stuff out of
    # Sinatra if it's better handled by a middleware component.
    set :logging, true  # use Rack::CommonLogger  
    
    helpers Sinatra::RDiscount
    
    # configure blocks:
    # configure :production do
    # end
    
    #before do
    #  mime :sql, 'text/plain; charset="UTF-8"' # when served by Sinatra itself
    #end
    
    # helper methods
    
    def page_title
      @title || ""
    end

    # def title=(name)... does not work, bug?
    def title(name)
      @title = " | #{name}"
    end
    
    get '/' do
      rdiscount :main
    end

    get '/:section' do
      rdiscount :"#{params[:section]}"
    end
    
    error do
      e = request.env['sinatra.error']
      Kernel.puts e.backtrace.join("\n")
      'Application error'
    end
    
    # each Sinatra::Base subclass has its own private middleware stack:
    use Rack::Lint
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
wbzyl-datamapper-tutorial-0.0.10 lib/datamapper-tutorial.rb
wbzyl-datamapper-tutorial-0.0.11 lib/datamapper-tutorial.rb
wbzyl-datamapper-tutorial-0.0.9 lib/datamapper-tutorial.rb