Rails 有什么 gem 可以显示 rails 信息的?

linjunhalida · 2013年04月11日 · 最后由 yzhrain 回复于 2013年04月13日 · 2651 次阅读

有的时候想知道 rails 的一些信息,比如跑的是 ruby 什么版本,用什么跑起来的,有哪些 middleware,config 里面有什么参数,虽然可以自己写一个页面,但是最好有一个这样的 Gem?谢谢~

rails 自己就有啊Rails::Info

#2 楼 @kenshin54 这个是 only for development 的吧 但是很多时候其实更想知道生产环境的情况 话说这需求确实不错

#3 楼 @iBachue 不是的啊,那个 Rails::InfoController,Rails::Info 本身的内容都是可以用的。

#4 楼 @kenshin54

initializer :add_builtin_route do |app|
  if Rails.env.development?
    app.routes.append do
      match '/rails/info/properties' => "rails/info#properties"
    end
  end
end
class Rails::InfoController < ActionController::Base
  def properties
    if consider_all_requests_local? || request.local?
      render :inline => Rails::Info.to_html
    else
      render :text => '<p>For security purposes, this information is only available to local requests.</p>', :status => :forbidden
    end
  end

  protected

  def consider_all_requests_local?
    Rails.application.config.consider_all_requests_local
  end
end

可是 Rails::InfoController 不就是 call 了 Rails::Info 嘛。

#2 楼 @kenshin54 Thanks! 看这些就好了,我自己写了一个页面把这些都列出来,还有加上一些 Settings 的参数,如果能够把 Rails.configuration 的东西挖出来就好了。

#5 楼 @iBachue 你别管那个 Controller,直接调用 Rails::Info 不就行了

@properties = Rails::Info.properties

然后在页面里

<% @properties.each_with_index do |p, index| %> <% end %>
<%= p[0] %> <%= p[1] %>

#9 楼 @deathdealer Rails::Info.to_html 现成

直接在 Rails Console 里面输入 Rails::Info 就看到了,不过信息不够详细。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号