We could use squel, it is very sloid and AR like interface

http://sequel.rubyforge.org/rdoc/files/doc/active_record_rdoc.html


Thread name: "More crap from AR 4" 
Mail number: 1 
Date: Sat, Jul 06, 2013 
In reply to: låzaro 
>
> Hi, all, now with AR-4 is imposible to add any relation
> 
> I mean for example:
> 
> Blog.entries.new 
> 
> And you'll have a very weird erro. Do not happen the same thing when you do
> it in the console.
> 
> NO ONE application, work the Table.relation.new or Table.relation.create...
> 
> except in the console...
> 
> Could we move to datamapper???
> 
> 
> 
> ArgumentError at /estacion/pacientes/evolucionar/1
> 
> wrong number of arguments (1 for 2)
> 
> Ruby <main>: in initialize, line 27
> Web  POST localhost/estacion/pacientes/evolucionar/1
> 
> Jump to:
> 
>   * GET
>   * POST
>   * Cookies
>   * ENV
> 
> Traceback (innermost first)
> 
>   * <main>: in initialize
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-4.0.0/lib/active_record/inheritance.rb:
>  in new
>     20. end
>     21. if (attrs = args.first).is_a?(Hash)
>     22. if subclass = subclass_from_attrs(attrs)
>     23. return subclass.new(*args, &block)
>     24. end
>     25. end
>     26. # Delegate to the original .new
>     27. super...
>     28. end
>     29.
>     30. # True if this isn't a concrete subclass needing a STI type condition.
>     31. def descends_from_active_record?
>     32. if self == Base
>     33. false
>     34. elsif superclass.abstract_class?
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-4.0.0/lib/active_record/inheritance.rb:
>  in new
>     20. end
>     21. if (attrs = args.first).is_a?(Hash)
>     22. if subclass = subclass_from_attrs(attrs)
>     23. return subclass.new(*args, &block)
>     24. end
>     25. end
>     26. # Delegate to the original .new
>     27. super...
>     28. end
>     29.
>     30. # True if this isn't a concrete subclass needing a STI type condition.
>     31. def descends_from_active_record?
>     32. if self == Base
>     33. false
>     34. elsif superclass.abstract_class?
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-4.0.0/lib/active_record/reflection.rb:
>  in build_association
>     182. super
>     183. @collection = [:has_many, :has_and_belongs_to_many].include?(macro)
>     184. end
>     185.
>     186. # Returns a new, unsaved instance of the associated class. 
> +attributes+ will
>     187. # be passed to the class's constructor.
>     188. def build_association(attributes, &block)
>     189. klass.new(attributes, &block)...
>     190. end
>     191.
>     192. def table_name
>     193. @table_name ||= klass.table_name
>     194. end
>     195.
>     196. def quoted_table_name
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-4.0.0/lib/active_record/associations/association.rb:
>  in build_record
>     235. # the target is stale.
>     236. #
>     237. # This is only relevant to certain associations, which is why it 
> returns nil by default.
>     238. def stale_state
>     239. end
>     240.
>     241. def build_record(attributes)
>     242. reflection.build_association(attributes) do |record|...
>     243. initialize_attributes(record)
>     244. end
>     245. end
>     246. end
>     247. end
>     248. end
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-4.0.0/lib/active_record/associations/collection_association.rb:
>  in build
>     107. first_or_last(:last, *args)
>     108. end
>     109.
>     110. def build(attributes = {}, &block)
>     111. if attributes.is_a?(Array)
>     112. attributes.collect { |attr| build(attr, &block) }
>     113. else
>     114. add_to_target(build_record(attributes)) do |record|...
>     115. yield(record) if block_given?
>     116. end
>     117. end
>     118. end
>     119.
>     120. def create(attributes = {}, &block)
>     121. create_record(attributes, &block)
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/activerecord-4.0.0/lib/active_record/associations/collection_proxy.rb:
>  in build
>     222. # # #<Pet id: nil, name: "Choo-Choo", person_id: 1>,
>     223. # # #<Pet id: nil, name: "Brain", person_id: 1>
>     224. # # ]
>     225. #
>     226. # person.pets.size # => 5 # size of the collection
>     227. # person.pets.count # => 0 # count from database
>     228. def build(attributes = {}, &block)
>     229. @association.build(attributes, &block)...
>     230. end
>     231. alias_method :new, :build
>     232.
>     233. # Returns a new object of the collection type that has been 
> instantiated with
>     234. # attributes, linked to this object and that has already been saved 
> (if it
>     235. # passes the validations).
>     236. #
>   * hermes.rb: in post
>     1098. # el paciente viene del parametro dado
>     1099. @paciente=Paciente.find_by_cama paciente
>     1100.
>     1101. # validamos que este listo para evolucionar
>     1102. @fiebre=input.include? 'fiebre'
>     1103.
>     1104. # creamos el paciente nuevo
>     1105. @evolucion=@paciente.evoluciones.new 
> :evolucion=>input.evolucion.to_s, 
> :fiebre=>@fiebre,:senho=>@state[:realname]...
>     1106.
>     1107. @evolucion.save # muestrame como quedo
>     1108. redirect R(EstacionPacientesN,paciente)
>     1109.
>     1110. end # if
>     1111.
>     1112. end # post
>   * <main>: in block in service
>   * <main>: in catch
>   * <main>: in service
>   * <main>: in call
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:
>  in call
>     218.
>     219. def call(env)
>     220. context(env)
>     221. end
>     222.
>     223. def context(env, app=@app)
>     224. prepare_session(env)
>     225. status, headers, body = app.call(env)...
>     226. commit_session(env, status, headers, body)
>     227. end
>     228.
>     229. private
>     230.
>     231. def initialize_sid
>     232. @sidbits = @default_options[:sidbits]
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:
>  in context
>     218.
>     219. def call(env)
>     220. context(env)
>     221. end
>     222.
>     223. def context(env, app=@app)
>     224. prepare_session(env)
>     225. status, headers, body = app.call(env)...
>     226. commit_session(env, status, headers, body)
>     227. end
>     228.
>     229. private
>     230.
>     231. def initialize_sid
>     232. @sidbits = @default_options[:sidbits]
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/session/abstract/id.rb:
>  in call
>     213. @default_options = self.class::DEFAULT_OPTIONS.merge(options)
>     214. @key = @default_options.delete(:key)
>     215. @cookie_only = @default_options.delete(:cookie_only)
>     216. initialize_sid
>     217. end
>     218.
>     219. def call(env)
>     220. context(env)...
>     221. end
>     222.
>     223. def context(env, app=@app)
>     224. prepare_session(env)
>     225. status, headers, body = app.call(env)
>     226. commit_session(env, status, headers, body)
>     227. end
>   * <main>: in block in use
>   * (eval): in call
>   * (eval): in call
>   * <main>: in block in use
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/camping-2.1.532/lib/camping/server.rb: in 
> call
>     159. if key = apps.keys.grep(/^#{@reloader.name}$/i)[0]
>     160. apps[key]
>     161. end
>     162. end
>     163.
>     164. def call(env)
>     165. app = current_app || raise("Could not find an app called 
> `#{@reloader.name}`")
>     166. app.call(env)...
>     167. end
>     168.
>     169. class XSendfile
>     170. def initialize(app)
>     171. @app = app
>     172. end
>     173.
>   * /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/cascade.rb: in 
> block in call
>     26. # by the server, or if it is replaced by a middleware action. Cascade
>     27. # replaces the body each time a cascade happens. It is assumed that 
> nil
>     28. # does not respond to close, otherwise the previous application body
>     29. # will be closed. The final application body will not be closed, as it
>     30. # will be passed to the server as a result.
>     31. last_body.close if last_body.respond_to? :close
>     32.
>     33. result = app.call(env)...
>     34. last_body = result[2]
>     35. break unless @catch.include?(result[0].to_i)
>     36. end
>     37.
>     38. result
>     39. end
>     40.
>   * /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/cascade.rb: in 
> each
>     17. end
>     18.
>     19. def call(env)
>     20. result = NotFound
>     21.
>     22. last_body = nil
>     23.
>     24. @apps.each do |app|...
>     25. # The SPEC says that the body must be closed after it has been 
> iterated
>     26. # by the server, or if it is replaced by a middleware action. Cascade
>     27. # replaces the body each time a cascade happens. It is assumed that 
> nil
>     28. # does not respond to close, otherwise the previous application body
>     29. # will be closed. The final application body will not be closed, as it
>     30. # will be passed to the server as a result.
>     31. last_body.close if last_body.respond_to? :close
>   * /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/cascade.rb: in 
> call
>     17. end
>     18.
>     19. def call(env)
>     20. result = NotFound
>     21.
>     22. last_body = nil
>     23.
>     24. @apps.each do |app|...
>     25. # The SPEC says that the body must be closed after it has been 
> iterated
>     26. # by the server, or if it is replaced by a middleware action. Cascade
>     27. # replaces the body each time a cascade happens. It is assumed that 
> nil
>     28. # does not respond to close, otherwise the previous application body
>     29. # will be closed. The final application body will not be closed, as it
>     30. # will be passed to the server as a result.
>     31. last_body.close if last_body.respond_to? :close
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/camping-2.1.532/lib/camping/server.rb: in 
> call
>     168.
>     169. class XSendfile
>     170. def initialize(app)
>     171. @app = app
>     172. end
>     173.
>     174. def call(env)
>     175. status, headers, body = @app.call(env)...
>     176.
>     177. if key = headers.keys.grep(/X-Sendfile/i).first
>     178. filename = headers[key]
>     179. content = open(filename,'rb') { | io | io.read}
>     180. headers['Content-Length'] = size(content).to_s
>     181. body = [content]
>     182. end
>   * /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/lint.rb: in _call
>     42. assert("No env given") { env }
>     43. check_env env
>     44.
>     45. env['rack.input'] = InputWrapper.new(env['rack.input'])
>     46. env['rack.errors'] = ErrorWrapper.new(env['rack.errors'])
>     47.
>     48. ## and returns an Array of exactly three values:
>     49. status, headers, @body = @app.call(env)...
>     50. ## The *status*,
>     51. check_status status
>     52. ## the *headers*,
>     53. check_headers headers
>     54.
>     55. check_hijack_response headers, env
>     56.
>   * /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/lint.rb: in call
>     30. ## after to catch all mistakes.
>     31.
>     32. ## = Rack applications
>     33.
>     34. ## A Rack application is a Ruby object (not a class) that
>     35. ## responds to +call+.
>     36. def call(env=nil)
>     37. dup._call(env)...
>     38. end
>     39.
>     40. def _call(env)
>     41. ## It takes exactly one argument, the *environment*
>     42. assert("No env given") { env }
>     43. check_env env
>     44.
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/showexceptions.rb: in 
> call
>     17.
>     18. def initialize(app)
>     19. @app = app
>     20. @template = ERB.new(TEMPLATE)
>     21. end
>     22.
>     23. def call(env)
>     24. @app.call(env)...
>     25. rescue StandardError, LoadError, SyntaxError => e
>     26. exception_string = dump_exception(e)
>     27.
>     28. env["rack.errors"].puts(exception_string)
>     29. env["rack.errors"].flush
>     30.
>     31. if prefers_plain_text?(env)
>   * /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/commonlogger.rb: 
> in call
>     26. def initialize(app, logger=nil)
>     27. @app = app
>     28. @logger = logger
>     29. end
>     30.
>     31. def call(env)
>     32. began_at = Time.now
>     33. status, header, body = @app.call(env)...
>     34. header = Utils::HeaderHash.new(header)
>     35. body = BodyProxy.new(body) { log(env, status, header, began_at) }
>     36. [status, header, body]
>     37. end
>     38.
>     39. private
>     40.
>   * /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/chunked.rb: in 
> call
>     36. end
>     37.
>     38. def initialize(app)
>     39. @app = app
>     40. end
>     41.
>     42. def call(env)
>     43. status, headers, body = @app.call(env)...
>     44. headers = HeaderHash.new(headers)
>     45.
>     46. if env['HTTP_VERSION'] == 'HTTP/1.0' ||
>     47. STATUS_WITH_NO_ENTITY_BODY.include?(status) ||
>     48. headers['Content-Length'] ||
>     49. headers['Transfer-Encoding']
>     50. [status, headers, body]
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/content_length.rb: in 
> call
>      7. include Rack::Utils
>      8.
>      9. def initialize(app)
>     10. @app = app
>     11. end
>     12.
>     13. def call(env)
>     14. status, headers, body = @app.call(env)...
>     15. headers = HeaderHash.new(headers)
>     16.
>     17. if !STATUS_WITH_NO_ENTITY_BODY.include?(status.to_i) &&
>     18. !headers['Content-Length'] &&
>     19. !headers['Transfer-Encoding'] &&
>     20. body.respond_to?(:to_ary)
>     21.
>   * 
> /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.5.2/lib/rack/handler/webrick.rb: 
> in service
>     53. env["QUERY_STRING"] ||= ""
>     54. unless env["PATH_INFO"] == ""
>     55. path, n = req.request_uri.path, env["SCRIPT_NAME"].length
>     56. env["PATH_INFO"] = path[n, path.length-n]
>     57. end
>     58. env["REQUEST_PATH"] ||= [env["SCRIPT_NAME"], env["PATH_INFO"]].join
>     59.
>     60. status, headers, body = @app.call(env)...
>     61. begin
>     62. res.status = status.to_i
>     63. headers.each { |k, vs|
>     64. if k.downcase == "set-cookie"
>     65. res.cookies.concat vs.split("\n")
>     66. else
>     67. # Since WEBrick won't accept repeated headers,
>   * /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb: in service
>     131.
>     132. servlet, options, script_name, path_info = search_servlet(req.path)
>     133. raise HTTPStatus::NotFound, "`#{req.path}' not found." unless servlet
>     134. req.script_name = script_name
>     135. req.path_info = path_info
>     136. si = servlet.get_instance(self, *options)
>     137. @logger.debug(format("%s is invoked.", si.class.name))
>     138. si.service(req, res)...
>     139. end
>     140.
>     141. def do_OPTIONS(req, res)
>     142. res["allow"] = "GET,HEAD,POST,OPTIONS"
>     143. end
>     144.
>     145. ##
>   * /usr/local/lib/ruby/1.9.1/webrick/httpserver.rb: in run
>     87. if callback = server[:RequestCallback]
>     88. callback.call(req, res)
>     89. elsif callback = server[:RequestHandler]
>     90. msg = ":RequestHandler is deprecated, please use :RequestCallback"
>     91. @logger.warn(msg)
>     92. callback.call(req, res)
>     93. end
>     94. server.service(req, res)...
>     95. rescue HTTPStatus::EOFError, HTTPStatus::RequestTimeout => ex
>     96. res.set_error(ex)
>     97. rescue HTTPStatus::Error => ex
>     98. @logger.error(ex.message)
>     99. res.set_error(ex)
>     100. rescue HTTPStatus::Status => ex
>     101. res.status = ex.code
>   * /usr/local/lib/ruby/1.9.1/webrick/server.rb: in block in start_thread
>     184. addr = sock.peeraddr
>     185. @logger.debug "accept: #{addr[3]}:#{addr[1]}"
>     186. rescue SocketError
>     187. @logger.debug "accept: <address unknown>"
>     188. raise
>     189. end
>     190. call_callback(:AcceptCallback, sock)
>     191. block ? block.call(sock) : run(sock)...
>     192. rescue Errno::ENOTCONN
>     193. @logger.debug "Errno::ENOTCONN raised"
>     194. rescue ServerError => ex
>     195. msg = "#{ex.class}: #{ex.message}\n\t#{ex.backtrace[0]}"
>     196. @logger.error msg
>     197. rescue Exception => ex
>     198. @logger.error ex
> 
> Request information
> 
> GET
> 
> No GET data.
> 
> POST
> 
> Variable                   Value
> evolucion "esto es una evolucion de ejemplo\r\n"
> fiebre    "No tiene Fiebre"
> 
> COOKIES
> 
>   Variable                                                         Value
>              "BAh7B0kiD3Nlc3Npb25faWQGOgZFRiJFNDMyZTY4MmNhY2YzOWQ4MGY5ZGZi\
>              nNTk3NWM0YTY3N2Q5OGMxNmQ3MWFjMzkwOWNiMzFiOGJhMDQ1YTM1ZjU5OUki\
> hermes.state nDGNhbXBpbmcGOwBGews6CWF1dGhUOgl1c2VySSIKbnVyc2UGOwBUOg11c2Vy\
>              nbmFtZUAKOg1yZWFsbmFtZUkiGkZsb3JlbmNlIE5pZ3RodGluZ2FsZQY7AFQ6\
>              
> nDWVzdGFjaW9uSSIUL2VzdGFjaW9uL251cnNlBjoNZW5jb2RpbmciEElTTy04\nODU5LTE1OgplbWFpbEkiFWxhemFyb0Bsb2NhbGhvc3QGOwBU\
>              n--10d7b651e46bb5ea8946449f2908aded3c946e42"
> 
> Rack ENV
> 
>             Variable                                                          
>                                                                               
>                                                                               
>  Value
> CONTENT_LENGTH                    71
> CONTENT_TYPE                      application/x-www-form-urlencoded
> GATEWAY_INTERFACE                 CGI/1.1
> HTTP_ACCEPT                       text/html, text/*;q=0.5, image/*, 
> application/*, audio/*, video/*, message/*
> HTTP_ACCEPT_ENCODING              gzip, compress, bzip, bzip2, deflate
> HTTP_ACCEPT_LANGUAGE              en;q=1.0
> HTTP_COOKIE                       hermes.state=
>                                   
> BAh7B0kiD3Nlc3Npb25faWQGOgZFRiJFNDMyZTY4MmNhY2YzOWQ4MGY5ZGZi%0ANTk3NWM0YTY3N2Q5OGMxNmQ3MWFjMzkwOWNiMzFiOGJhMDQ1YTM1ZjU5OUki%0ADGNhbXBpbmcGOwBGews6CWF1dGhUOgl1c2VySSIKbnVyc2UGOwBUOg11c2Vy%0AbmFtZUAKOg1yZWFsbmFtZUkiGkZsb3JlbmNlIE5pZ3RodGluZ2FsZQY7AFQ6%0ADWVzdGFjaW9uSSIUL2VzdGFjaW9uL251cnNlBjoNZW5jb2RpbmciEElTTy04%0AODU5LTE1OgplbWFpbEkiFWxhemFyb0Bsb2NhbGhvc3QGOwBU%0A--10d7b651e46bb5ea8946449f2908aded3c946e42
> HTTP_COOKIE2                      $Version="1"
> HTTP_HOST                         localhost:3301
> HTTP_REFERER                      
> http://localhost:3301/estacion/pacientes/evolucionar/1
> HTTP_USER_AGENT                   w3m/0.5.3+cvs-1.1055
> HTTP_VERSION                      HTTP/1.1
> PATH_INFO                         /estacion/pacientes/evolucionar/1
> QUERY_STRING
> REMOTE_ADDR                       127.0.0.1
> REMOTE_HOST                       127.0.0.1
> REQUEST_METHOD                    POST
> REQUEST_PATH                      /estacion/pacientes/evolucionar/1
> REQUEST_URI                       
> http://localhost:3301/estacion/pacientes/evolucionar/1
> SCRIPT_NAME
> SERVER_NAME                       localhost
> SERVER_PORT                       3301
> SERVER_PROTOCOL                   HTTP/1.1
> SERVER_SOFTWARE                   WEBrick/1.3.1 (Ruby/1.9.3/2013-02-06)
> :input
> rack.errors                       #<Rack::Lint::ErrorWrapper:0xa564a8c 
> @error=#<IO:<STDERR>>>
> rack.input                        #<Rack::Lint::InputWrapper:0xa564adc 
> @input=#<StringIO:0xa5fe560>>
> rack.multiprocess                 false
> rack.multithread                  true
>                                   
> {"hermes.state"=>"BAh7B0kiD3Nlc3Npb25faWQGOgZFRiJFNDMyZTY4MmNhY2YzOWQ4MGY5ZGZi\
> rack.request.cookie_hash          
> nNTk3NWM0YTY3N2Q5OGMxNmQ3MWFjMzkwOWNiMzFiOGJhMDQ1YTM1ZjU5OUki\nDGNhbXBpbmcGOwBGews6CWF1dGhUOgl1c2VySSIKbnVyc2UGOwBUOg11c2Vy\
>                                   
> nbmFtZUAKOg1yZWFsbmFtZUkiGkZsb3JlbmNlIE5pZ3RodGluZ2FsZQY7AFQ6\nDWVzdGFjaW9uSSIUL2VzdGFjaW9uL251cnNlBjoNZW5jb2RpbmciEElTTy04\
>                                   
> nODU5LTE1OgplbWFpbEkiFWxhemFyb0Bsb2NhbGhvc3QGOwBU\n--10d7b651e46bb5ea8946449f2908aded3c946e42"}
> rack.request.cookie_string        hermes.state=
>                                   
> BAh7B0kiD3Nlc3Npb25faWQGOgZFRiJFNDMyZTY4MmNhY2YzOWQ4MGY5ZGZi%0ANTk3NWM0YTY3N2Q5OGMxNmQ3MWFjMzkwOWNiMzFiOGJhMDQ1YTM1ZjU5OUki%0ADGNhbXBpbmcGOwBGews6CWF1dGhUOgl1c2VySSIKbnVyc2UGOwBUOg11c2Vy%0AbmFtZUAKOg1yZWFsbmFtZUkiGkZsb3JlbmNlIE5pZ3RodGluZ2FsZQY7AFQ6%0ADWVzdGFjaW9uSSIUL2VzdGFjaW9uL251cnNlBjoNZW5jb2RpbmciEElTTy04%0AODU5LTE1OgplbWFpbEkiFWxhemFyb0Bsb2NhbGhvc3QGOwBU%0A--10d7b651e46bb5ea8946449f2908aded3c946e42
> rack.request.form_hash            {"fiebre"=>"No tiene Fiebre", 
> "evolucion"=>"esto es una evolucion de ejemplo\r\n"}
> rack.request.form_input           #<Rack::Lint::InputWrapper:0xa564adc 
> @input=#<StringIO:0xa5fe560>>
> rack.request.form_vars            
> fiebre=No+tiene+Fiebre&evolucion=esto+es+una+evolucion+de+ejemplo%0D%0A
> rack.request.query_hash           {}
> rack.request.query_string
> rack.run_once                     false
> rack.session                      
> {"session_id"=>"432e682cacf39d80f9dfb5975c4a677d98c16d71ac3909cb31b8ba045a35f599",
>  "camping"=>{:auth=>true, :user=>"nurse",
>                                   :username=>"nurse", :realname=>"Florence 
> Nigthtingale", :estacion=>"/estacion/nurse", :email=>"lazaro@localhost"}}
> rack.session.options              {:path=>"/", :domain=>nil, 
> :expire_after=>nil, :secure=>false, :httponly=>true, :defer=>false, 
> :renew=>false, :sidbits=>128,
>                                   :secure_random=>SecureRandom, 
> :secret=>"*Dorothy+Ogrem!", 
> :coder=>#<Rack::Session::Cookie::Base64::Marshal:0xa395620>}
> rack.session.unpacked_cookie_data 
> {"session_id"=>"432e682cacf39d80f9dfb5975c4a677d98c16d71ac3909cb31b8ba045a35f599",
>  "camping"=>{:auth=>true, :user=>"nurse",
>                                   :username=>"nurse", :realname=>"Florence 
> Nigthtingale", :estacion=>"/estacion/nurse", :email=>"lazaro@localhost"}}
> rack.url_scheme                   http
> rack.version                      [1, 2]
> 
> You're seeing this error because you use Rack::ShowExceptions.
> 
> 
> _______________________________________________
> Camping-list mailing list
> Camping-list@rubyforge.org
> http://rubyforge.org/mailman/listinfo/camping-list
> 

-- 
-------- Warning! ------------
100'000 pelos de escoba fueron
introducidos satisfactoriamente
en su puerto USB.




_______________________________________________
Camping-list mailing list
Camping-list@rubyforge.org
http://rubyforge.org/mailman/listinfo/camping-list

Reply via email to