diff options
Diffstat (limited to 'actionpack/examples/very_simple.rb')
-rw-r--r-- | actionpack/examples/very_simple.rb | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/actionpack/examples/very_simple.rb b/actionpack/examples/very_simple.rb new file mode 100644 index 0000000000..8d01cb39bd --- /dev/null +++ b/actionpack/examples/very_simple.rb @@ -0,0 +1,50 @@ +$:.push "rails/activesupport/lib" +$:.push "rails/actionpack/lib" + +require "action_controller" + +class Kaigi < ActionController::Http + include AbstractController::Callbacks + include ActionController::RackConvenience + include ActionController::Renderer + include ActionController::Layouts + include ActionView::Context + + before_filter :set_name + append_view_path "views" + + def _action_view + self + end + + def controller + self + end + + DEFAULT_LAYOUT = Object.new.tap {|l| def l.render(*) yield end } + + def _render_template_from_controller(template, layout = DEFAULT_LAYOUT, options = {}, partial = false) + ret = template.render(self, {}) + layout.render(self, {}) { ret } + end + + def index + render :template => "template" + end + + def alt + render :template => "template", :layout => "alt" + end + + private + def set_name + @name = params[:name] + end +end + +app = Rack::Builder.new do + map("/kaigi") { run Kaigi.action(:index) } + map("/kaigi/alt") { run Kaigi.action(:alt) } +end.to_app + +Rack::Handler::Mongrel.run app, :Port => 3000
\ No newline at end of file |