操作
Defect #110
完了Glocライブラリを明示的に使っている
開始日:
2009/07/01
期日:
2009/07/01
進捗率:
100%
予定工数:
0:15時間
説明
やったこと¶
- 0.1.4 を導入
- エラーが発生。
A NameError occurred in application#index: uninitialized constant HudsonHttpException::GLoc C:/Program Files/Ruby/lib/ruby/gems/1.8/gems/activesupport-2.2.2/lib/active_support/dependencies.rb
理由¶
HudsonHttpException は例外を説明するメッセージを
言語ファイルから引っ張りだしています。
Redmine0.8.4では、多言語の対応に GLoc ライブラリを使っていますが、
Redmine-Trunk では Rails 自前のライブラリになっています。(確か)
ActiveRecord を継承する場合は、ActiveRecord の方で
GLoc を include してくれているので多言語対応のために何もしなくてよいのですが、
HudsonHttpException は ActiveRecord を継承しないクラスだったので、
自前で GLoc を include していたという訳です。
対処¶
GLoc ライブラリを使わないようにします。
ActiveRecord などを継承しないクラスが、GLoc の include なしで
l(:hogehoge)
を使うことはできないので、 必ず利用する HudsonSettings クラスにHudsonHttpException クラスを移動しようと思います。
include ApplicationHelper
で対応します。
Toshiyuki Ando さんがほぼ15年前に更新
- ステータス を 新規(New) から 担当(Assigned) に変更
- 予定工数 を 0:15時間 にセット
今やってみたら、
include ApplicationHelper
で回避できそうなので、そちらで。
使わない Helper を include するのはどうかと思うのだけど、こちらにします。(Trunkでも動いたし)
本来は、Error クラスを使うのがいいのかなぁ。
Toshiyuki Ando さんがほぼ15年前に更新
- ステータス を 担当(Assigned) から 解決(Resolved) に変更
- 進捗率 を 0 から 100 に変更
Applied in changeset r188.
操作