什么是正确的方法:我有一个可以使用或不使用rails的gem - 如果它在rails中使用,我想重新使用rails-services,例如配置的记录器。如果它在 Rails 之外(例如在 sinatra-app 中),我想从 stdlib 中使用 Logger:什么是 gem 确定的安全方法,如果我们在 rails-app 中?!
我试过这样的方法:
@logger = defined?("Rails") ? eval("Rails.logger") : Logger.new(STDOUT)
但这只会给我一个“未初始化的常量”......