2013-02-20 79 views
8

我想在我的rails 3.2应用程序中使用gem“better_errors”,但它仍然是显示的默认错误页面。Gem“better_errors”不工作 - Rails 3.2

在我的Gemfile:

group :development do 
    gem 'quiet_assets', '>= 1.0.1' 
    gem 'better_errors', '>= 0.3.2' 
    gem 'binding_of_caller', '>= 0.6.8' 
end 

我做了一个 “包安装”,然后

bundle show better_errors 
/usr/local/lib/ruby/gems/1.9.1/gems/better_errors-0.5.0 

似乎一切都配置好。

我跑我的Rails服务器的开发环境

rails s -e development 

任何想法? 非常感谢。

+1

重新启动服务器导轨.. – 2013-02-20 11:42:30

回答

23

我在同样的问题上挠了挠脑筋。我终于发邮件给查理了,他回答了我一个小时左右的回答:“你需要在localhost上使用better_errors”

我一直在Windows 7主机上的Ubuntu VM中开发并浏览网站从Windows。尽管存在安全风险,但您可以按照以下说明进行操作:https://github.com/charliesome/better_errors#security

我希望这可以解决您的问题。

+8

上面的解决方案是把它放在'config/environments/development.rb'中: 'BetterErrors :: Middleware.allow_ip! '192.168.10.14'' – zwippie 2013-03-07 21:01:52

+0

是的,这就是我最终做的。查理还提到你可以使用SSH端口转发使它看起来像你在本地主机上运行。这可以保持您的导轨环境以外的孔。 – 2013-03-08 16:27:58

+0

然而,当你在生产中部署时会发生什么?在尝试部署时,我一直遇到BetterErrors未初始化的问题 – Batman 2015-07-21 06:10:51

1

你可以按照这个情节railscast的:

http://railscasts.com/episodes/402-better-errors-railspanel

这是我group developmentbetter_errors宝石:

group :development do 
    gem 'better_errors' 
    gem 'binding_of_caller' 
    gem 'meta_request' 
end 

您可以按照下列步骤操作:

更新better_error宝石最后的版本!

1º卸载current version of better_error宝石与命令gem uninstall better_errors

2º然后取出'>= 1.0.1''>= 0.3.2''>= 0.6.8'你的宝石文件,然后运行命令bundle install

商祺!

+0

谢谢,但它没有工作。甚至RailsPanel与meta_request不起作用:-(我没有任何配置/初始化/ better_errors.rb是正常的? – Gozup 2013-02-20 10:09:18

+0

我已经更新了我的回复。请按照这些步骤! – hyperrjas 2013-02-20 10:27:00

+0

它让我发疯。 ': 使用better_errors(0.6.0) 使用debug_inspector(0.0.2) 使用binding_of_caller(0.7.1) 但一切都没有改变 – Gozup 2013-02-20 10:39:51

1

你可以尝试一个包更新?因为我现在的版本是0.6.0。

此外,如果你没有500内部服务器错误,我不使用config /初始化/ better_errors.rb文件

检查服务器日志,当我在阿贾克斯后的车型得到了他们更新我没有看到better_errors页面。

3

添加行./config/environments/development.rb

BetterErrors :: Middleware.allow_ip!“CLIENT_IPADDR”

,并重启轨服务器