【问题标题】:how to get mini-profiler to start in rails如何让迷你分析器在 Rails 中启动
【发布时间】:2013-06-10 13:53:40
【问题描述】:

我在 Rails 4 (rc1) 应用程序中安装了 mini-profiler gem,但是当我加载应用程序时,它没有在浏览器中显示带有加载时间统计信息的小窗口。

根据我正在观看的 Railscast,它应该在将其添加到 gemfile、运行包并重新启动应用程序后开始工作。

你能建议我可以做些什么来让它工作吗?

宝石文件

gem 'rails', '4.0.0.rc1'

gem 'devise', '3.0.0.rc'
gem "rolify"
gem  'cancan'
gem 'simple_form', '3.0.0.rc'
gem 'backbone-on-rails'
gem 'geocoder'
gem 'pg_search'
gem 'sidekiq'

gem 'gmaps4rails'

# Use postgresql as the database for Active Record
gem 'pg'
gem 'will_paginate'
gem "figaro", ">= 0.6.3"
gem 'stripe'
gem "stripe_event"
gem 'jquery-turbolinks'
gem 'dalli'


# Use SCSS for stylesheets
gem 'sass-rails', '~> 4.0.0.rc1'

# Use Uglifier as compressor for JavaScript assets
gem 'uglifier', '>= 1.3.0'

# Use CoffeeScript for .js.coffee assets and views
gem 'coffee-rails', '~> 4.0.0'

# See https://github.com/sstephenson/execjs#readme for more supported runtimes
# gem 'therubyracer', platforms: :ruby

# Use jquery as the JavaScript library
gem 'jquery-rails'



# Turbolinks makes following links in your web application faster. Read more: https://github.com/rails/turbolinks
gem 'turbolinks'

# Build JSON APIs with ease. Read more: https://github.com/rails/jbuilder
gem 'jbuilder', '~> 1.0.1'

group :doc do
  # bundle exec rake doc:rails generates the API under doc/api.
  gem 'sdoc', require: false
end
gem 'rack-mini-profiler'

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-4 rack-mini-profiler


    【解决方案1】:

    我只是想把今天学到的东西扔掉,因为我正在努力让 rack-mini-profiler 工作,希望它可以帮助其他人。

    如果您使用的是 Rack::Deflater,它将导致它无法将分析器插入主体。经过一番挖掘后,我发现在 v0.9.2 中它正在正则表达式响应的主体并插入自身。使用 Rack::Deflater 时,正文是二进制格式,正则表达式永远不会成功找到插入自身的适当位置。

    我所做的只是将配置行移到 environment/production.rb

    config.middleware.use Rack::Deflater
    

    【讨论】:

      【解决方案2】:

      我遇到了同样的问题,并通过将其添加到 config.ru 来使其工作:

      require 'rack-mini-profiler'
      use Rack::MiniProfiler
      

      【讨论】:

      • 好收获。这也解决了 Padrino 中的类似问题 - 不断收到attack prevented by Rack::Protection::AuthenticityToken。谢谢!
      • @Bram Jetten 我希望我能说这个解决方案有效。那里没有任何其他线程。
      • @Bram Jetten 我尝试使用那段代码。但是在加载时,我收到以下错误: Puma 捕获此错误:未定义方法 discard' for nil:NilClass (NoMethodError) /Users/maheshmesta/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/rack-mini-profiler-0.10.5/lib/mini_profiler/profiler.rb:289:in call' 。请帮助
      【解决方案3】:

      我用的是heroku-deflater。我将那个 gem 移到了生产 gem 组:

      group :production do
        # ...
        gem 'heroku-deflater', '~> 0.5'
      end
      

      ... rack-mini-profiler 开始工作了。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-31
        • 1970-01-01
        • 2016-07-18
        • 1970-01-01
        相关资源
        最近更新 更多