【问题标题】:Extract Ruby Parameters提取 Ruby 参数
【发布时间】:2013-03-16 19:32:00
【问题描述】:

您好,我正在尝试制作类似于 Rack::URLBuilder 的机架控制器,但我无法提取参数。

config.ru

run Example::Controller.new ([
  "test" => Sinatra::Application
])

controller.rb

module Example
  class Controller

    def initialize(map = {})
      @map = map
    end

    def call(env)
      puts @map
    end

  end
end

这段代码输出:

testSinatra::Application

每次我运行应用程序时。如何提取一个值作为测试,另一个值作为Sinatra::Application

【问题讨论】:

  • 您使用的是哪个版本的 Ruby?早期版本会打印彼此相邻的哈希键和值,例如 testSinatra::Application,但 1.9.3 会打印 {"test"=>Sinatra::Application}。不过,您的代码正在返回一个哈希值。

标签: ruby rubygems sinatra rack middleware


【解决方案1】:

在您试验和放入调试跟踪等时添加.inspect 通常会有所帮助:

puts @map.inspect

这为您提供了比许多类的默认字符串转换更好的调试输出。

你应该看到你想要的数据确实在那里。

【讨论】:

  • 谢谢你,我能够看到哈希中实际上有数据
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-06-25
  • 2011-01-30
  • 1970-01-01
  • 1970-01-01
  • 2013-07-06
  • 2011-10-29
  • 1970-01-01
相关资源
最近更新 更多