![]() |
# Module: Capcode::Helpers [ "README", "AUTHORS", "COPYING", "lib/capcode.rb", nil].each do Capcode.view_html Capcode::Helpers.view_html Capcode::HTTPError.view_html Capcode::RouteError.view_html Capcode::ParameterError.view_html end |
Helpers contains methods available in your controllers

Builds an URL route to a controller or a path
if you declare the controller Hello :
module Capcode
class Hello < Route '/hello/(.*)'
...
end
end
then
URL( Hello, "you" ) # => /hello/you
[ show source ]
# File lib/capcode.rb, line 63
63: def URL( klass, *a )
64: path = nil
65: a = a.delete_if{ |x| x.nil? }
66:
67: if klass.class == Class
68: Capcode.routes.each do |p, k|
69: path = p if k.class == klass
70: end
71: else
72: path = klass
73: end
74:
75: path+((a.size>0)?("/"+a.join("/")):(""))
76: end

Help you to return a JSON response
module Capcode
class JsonResponse < Route '/json/([^\/]*)/(.*)'
def get( arg1, arg2 )
json( { :1 => arg1, :2 => arg2 })
end
end
end
[ show source ]
# File lib/capcode.rb, line 28
28: def json( d )
29: @response['Content-Type'] = 'application/json'
30: d.to_json
31: end

Send a redirect response
module Capcode
class Hello < Route '/hello/(.*)'
def get( you )
if you.nil?
redirect( WhoAreYou )
else
...
end
end
end
end
[ show source ]
# File lib/capcode.rb, line 46
46: def redirect( klass, *a )
47: [302, {'Location' => URL(klass, *a)}, '']
48: end