以下是我在机架应用程序中的内容
#rb file
require 'pry'
class .....
#GemFile
group :development do
gem "pry"
gem "pry-nav"
end
当然,在生产中它会导致错误。怎么做一个“要求”?
答案 0 :(得分:14)
require 'pry' if ENV['RACK_ENV'] == 'development'
答案 1 :(得分:3)
可能是你可以将它嵌入if块
根据文档Sinatra提供了一个环境变量 http://www.sinatrarb.com/intro#Environments
if development?
require 'pry'
end
您需要使用它的任何地方。
这可能不是您可能只是疯狂猜测的确切解决方案
答案 2 :(得分:-1)
我建议在你的app中的Object或Kernel中编写这样的方法:
def require_pry
require 'pry' if ENV['RACK_ENV'] == 'development'
end
之后,如果您的代码需要,可以调用require_pry。但是我怀疑为什么它不能由Bundler处理,Bundle.require将需要环境所需的所有宝石。