1

我在尝试访问 Redmine 中的“我的帐户”时遇到内部错误。但是重新加载页面后没有内部错误,我可以访问该页面。以下是Redmine日志中的信息:

处理 MyController#account (for 91.90.15.48 at 2011-09-26 01:10:20) [GET] 参数:{"action"=>"account", "controller"=>"my"} layouts/中的渲染模板基础渲染我/帐户

ActionView::TemplateError (uninitialized constant ActiveSupport::TimeZone::TZInfo) on line #3 of app/views/users/_preferences.html.erb: 1: <% fields_for :pref, @user.pref, :builder => TabularFormBuilder , :lang => current_language do |pref_fields| %> 2:

<%= pref_fields.check_box :hide_mail %>

3:

<%= pref_fields.select :time_zone, ActiveSupport::TimeZone.all.collect {|z| [ z.to_s, z.name ]}, :include_blank => true %>

4:

<%= pref_fields.select :comments_sorting, [[l(:label_chronological_order), 'asc'], [l(:label_reverse_chronological_order), 'desc']] %>

5:

<%= pref_fields.check_box :warn_on_leaving_unsaved %>

6: <% 结束 %>

app/views/users/_preferences.html.erb:3
app/views/users/_preferences.html.erb:1
app/views/my/account.rhtml:40:in

_run_rhtml_app47views47my47account46rhtml' app/views/my/account.rhtml:8:in _run_rhtml_app47views47my47account46rhtml' 乘客 (2.2.15) lib/phusion_passenger/rack/request_handler.rb:92:in process_request' passenger (2.2.15) lib/phusion_passenger/abstract_request_handler.rb:207:inmain_loop' 乘客 (2.2.15) lib/phusion_passenger/railz/application_spawner.rb:441:in start_request_handler' passenger (2.2.15) lib/phusion_passenger/railz/application_spawner.rb:381:in handle_spawn_application' 乘客 (2.2.15) lib/phusion_passenger/utils.rb:252:in safe_fork' passenger (2.2.15) lib/phusion_passenger/railz/application_spawner.rb:377:in handle_spawn_application'乘客 (2.2.15) lib/phusion_passenger/abstract_server.rb:352:in __send__' passenger (2.2.15) lib/phusion_passenger/abstract_server.rb:352:in main_loop'乘客 (2.2.15) lib/phusion_passenger/abstract_server.rb:196:in start_synchronously' passenger (2.2.15) lib/phusion_passenger/abstract_server.rb:163:in start '乘客 (2.2.15) lib/phusion_passenger/railz/application_spawner.rb:222:in start' passenger (2.2.15) lib/phusion_passenger/railz/framework_spawner.rb:291:in handle_spawn_application' 乘客 (2.2.15) lib/phusion_passenger/abstract_server_collection.rb:126:in lookup_or_add' passenger (2.2.15) lib/phusion_passenger/railz/framework_spawner.rb:286:in handle_spawn_application' 乘客 (2.2.15) lib/phusion_passenger/abstract_server_collection.rb:80:in synchronize' passenger (2.2.15) lib/phusion_passenger/abstract_server_collection.rb:79:in 同步'乘客 (2.2.15) lib/phusion_passenger/railz/framework_spawner.rb:284:in handle_spawn_application' passenger (2.2.15) lib/phusion_passenger/abstract_server.rb:352:in 发送'乘客 (2.2.15) lib/ phusion_passenger/abstract_server.rb:352:in main_loop' passenger (2.2.15) lib/phusion_passenger/abstract_server.rb:196:in start_synchronously'乘客 (2.2.15) lib/phusion_passenger/abstract_server.rb:163:in start' passenger (2.2.15) lib/phusion_passenger/railz/framework_spawner.rb:101:instart'乘客 (2.2.15) lib/phusion_passenger/spawn_manager.rb:253:in spawn_rails_application' passenger (2.2.15) lib/phusion_passenger/abstract_server_collection.rb:126:in lookup_or_add'乘客(2.2.15) lib/phusion_passenger/spawn_manager.rb:247:in spawn_rails_application' passenger (2.2.15) lib/phusion_passenger/abstract_server_collection.rb:80:in 同步'乘客 (2.2.15) lib/phusion_passenger/abstract_server_collection.rb:79:in synchronize' passenger (2.2.15) lib/phusion_passenger/spawn_manager.rb:246:in spawn_rails_application' 乘客 (2.2.15) lib/phusion_passenger/spawn_manager.rb:145:in spawn_application' passenger (2.2.15) lib/phusion_passenger/spawn_manager.rb:278:in handle_spawn_application' 乘客 (2.2.15) lib/phusion_passenger/abstract_server.rb:352:in __send__' passenger (2.2.15) lib/phusion_passenger/abstract_server.rb:352:in main_loop' 乘客 (2.2.15) lib/phusion_passenger/ abstract_server.rb:196:in `start_synchronously'

渲染 /home/eosweb/rails_apps/Redmine/public/500.html(500 内部服务器错误)

处理 TimeTrackersController#render_menu (for 95.81.29.50 at 2011-09-26 01:10:26) [POST] 参数:{"action"=>"render_menu", "authenticity_token"=>"Shjxnqzbk2l3hFzHQIAOibBQLfgKwmOnC5p0XMh4P/g=", "controller "=>"time_trackers"} 在 14 毫秒内完成(查看:10,DB:1)| 200 OK [http://redmine.eos-soft.com/time_trackers/render_menu]

处理 MyController#account (for 91.90.15.48 at 2011-09-26 01:10:32) [GET] 参数:{"action"=>"account", "controller"=>"my"} layouts/中的渲染模板base 渲染我/帐户在 49 毫秒内完成(查看:46,DB:0)| 200 OK [http://redmine.eos-soft.com/my/account]

有什么问题?

4

1 回答 1

0

由于 Redmine 不使用 Bundler,因此安装在系统上的新的或更新的 gem 很容易导致这样的错误。我遇到了同样的错误,并通过将 Redmine 放在 Bundler 上解决了它。Bundler 可以防止已安装但不在 Gemfile 中的 gem 被无意中包含在 Rails 应用程序中。

假设安装的新 gem 是故意放在那里的,您将需要使用 bundler 来阻止 Redmine 加载它们。如果不是这种情况,也许您应该只查看 tzinfo gem 是否已安装并卸载它。

要使用 bundler,首先安装 bundler gem

gem install bundler

然后按照http://gembundler.com/rails23.html上的说明进行操作

您可以查看https://github.com/SciMed/redmine/commit/e94b607b3d9843085c178057702199a819d3725a作为您将对 Redmine 应用程序进行捆绑的更改的示例。

确保在 gemfile 中包含 rails 和您正在使用的任何数据库适配器(在我的例子中,pg 用于 postgresql)。

重新启动您的应用程序,此问题应该会消失。

于 2012-02-27T19:49:46.660 回答