机架选项,如何像这样访问传递给机架的选项:$ rackup --option arg1=true
Rack options, how to access options passed to rack like so: $ rackup --option arg1=true
我到处搜索任何 Rack 文档,详细说明如何访问这些选项,文档说您可以像这样传递到 rack 应用程序中:
$ rackup --server thin --env development --option arg1=true
在我的 config.ru 中,我使用 Rack::Cascade 像这样:
Rack::Cascade.new [myapp1, myapp2]
我需要通过命令行上的 rackup 访问传递给 Rack 的选项,并使其可供 Rack::Cascade 中的 Ruby 应用 运行 使用。
机架选项可以通过 [your_rack_server_instance].options
访问。
例如,如果您像下面这样初始化机架服务器:
rack = Rack::Server.new # or Rack::Server.new(options)
rack.options
#=> {:environment=>"development", :Port=>9292, :Host=>"localhost", :config=>"/Users/abc/workspace/xyz/config.ru"}
具体可以看一下它的实现:
仍未找到通过机架服务器实例选项执行此操作的方法。至少不是来自通过机架级联 运行 的模块。
我最终实现同样目标的方法是像这样设置一个环境变量:
env deployment=true rackup --server thin --host 0.0.0.0 --port 4567 --quiet
当然可以从机架级联中的任何模块 运行ning 访问部署选项,如下所示:
ENV['deployment']
我到处搜索任何 Rack 文档,详细说明如何访问这些选项,文档说您可以像这样传递到 rack 应用程序中:
$ rackup --server thin --env development --option arg1=true
在我的 config.ru 中,我使用 Rack::Cascade 像这样:
Rack::Cascade.new [myapp1, myapp2]
我需要通过命令行上的 rackup 访问传递给 Rack 的选项,并使其可供 Rack::Cascade 中的 Ruby 应用 运行 使用。
机架选项可以通过 [your_rack_server_instance].options
访问。
例如,如果您像下面这样初始化机架服务器:
rack = Rack::Server.new # or Rack::Server.new(options)
rack.options
#=> {:environment=>"development", :Port=>9292, :Host=>"localhost", :config=>"/Users/abc/workspace/xyz/config.ru"}
具体可以看一下它的实现:
仍未找到通过机架服务器实例选项执行此操作的方法。至少不是来自通过机架级联 运行 的模块。
我最终实现同样目标的方法是像这样设置一个环境变量:
env deployment=true rackup --server thin --host 0.0.0.0 --port 4567 --quiet
当然可以从机架级联中的任何模块 运行ning 访问部署选项,如下所示:
ENV['deployment']