我有一个Sinatra
正在创建的程序,我希望能够在启动它时将命令行参数传递给这个应用程序。我遇到的问题是我不知道该怎么做。我试过Trollop
了,看着OptParser
。Trollop
似乎无法使用,Sinatra
因为OptParser
它似乎是“默认”解析器Sinatra
。这是真的?如果是这样,我如何自定义启动应用程序时接受的参数类型?
问问题
1496 次
2 回答
3
ruby app.rb hello
# app.rb
require 'sinatra'
get '/' do
ARGV[0]
end
现在,当我访问localhost:4567
(Thin 托管我的 sinatra 应用程序的地方)时,我会看到一个打招呼的页面。
于 2012-12-12T21:47:04.997 回答
1
或者,您可以使用环境变量。
从这里借来的例子:https ://gist.github.com/benlovell/351962
require 'rubygems'
require 'sinatra'
get '/' do
ENV['envvar']
end
然后运行:
envvar=something ruby app.rb
于 2015-07-16T18:48:52.060 回答