これが私のラックアプリにあるものです
#rb file
require 'pry'
class .....
#GemFile
group :development do
gem "pry"
gem "pry-nav"
end
もちろん、本番環境ではエラーが発生します。一種の「require if」を作成するにはどうすればよいですか?
require 'pry' if ENV['RACK_ENV'] == 'development'
ifブロック内に埋め込むことができるかもしれません
docs Sinatra によると、環境変数 http://www.sinatrarb.com/intro#Environmentsを提供しています
if development?
require 'pry'
end
どこでも使用する必要があります。
これはあなたが探している正確な解決策ではないかもしれません。
アプリのオブジェクトまたはカーネルにそのようなメソッドを記述することをお勧めします。
def require_pry
require 'pry' if ENV['RACK_ENV'] == 'development'
end
その後、コードで必要な場合は require_pry を呼び出すことができます。しかし、Bundler で処理できない理由には疑問があります。Bundle.require には、環境に必要なすべての gem が必要です。