Module ScaffoldingExtensions::MetaSinatraController

  1. lib/scaffolding_extensions/controller/sinatra.rb

Methods

public instance

  1. scaffold_setup_helper

Public instance methods

scaffold_setup_helper ()
[show source]
     # File lib/scaffolding_extensions/controller/sinatra.rb, line 110
110:     def scaffold_setup_helper
111:       include ScaffoldingExtensions::Controller
112:       include ScaffoldingExtensions::SinatraController
113:       include ScaffoldingExtensions::Helper
114:       include ScaffoldingExtensions::SinatraHelper
115:       p = 'POST'
116:       block = lambda do
117:         captures = params[:captures] || []
118:         @scaffold_path = request.env['SCRIPT_NAME']
119:         @scaffold_method = meth = captures[0] || 'index'
120:         params[:id] ||= captures[1]
121:         raise(ArgumentError, 'Method Not Allowed') if scaffold_request_method != p && scaffolded_nonidempotent_method?(meth)
122:         scaffolded_method?(meth) ? send(meth) : pass
123:       end
124:       get('/?', &block)
125:       [:get, :post].each do |req_meth|
126:         send(req_meth, %r{\A/(\w+)(?:/(\w+))?\z}, &block)
127:       end
128:       self
129:     end