从实例方法中获取sinatra环境

pgu*_*rio 15 ruby sinatra

确定环境的正确方法是什么?现在我正在使用:

class Main < Sinatra::Base
    get '/' do
        puts self.class.development?
        puts self.class.production?
    end
end
Run Code Online (Sandbox Code Playgroud)

但这似乎不对.

Jim*_*lle 33

我会使用Sinatra::Base.development?或者Sinatra::Base.production?因为那是方法的来源.


tbu*_*ann 21

self.class.development?应该真的有效.这些都适用于Sinatra 1.3.1:

class Main < Sinatra::Base
  get '/' do
    puts Main.development?
    puts self.class.development?
    puts settings.development?
    puts settings.environment == :development
  end
end
Run Code Online (Sandbox Code Playgroud)