3

と呼ばれるメソッドruby-debugを呼び出して使用するときに、ハッシュが定義されていない理由を知っている人はいますか?debuggerbefore_filterparamssession

class MyExampleController < ActionController::Base

  before_filter :test_hashes

  def test_hashes
    pp session    
    pp params   #both work as expected..

    debugger #calling the debug console
  end

  def index
    #whatever..
  end

end

#the rdb console
(rdb:5) pp params
NameError Exception: undefined local variable or method 'params' for #<ActionController::Filters::BeforeFilter:0x3eafda0>
(rdb:5) pp session
NameError Exception: undefined local variable or method 'session' for #<ActionController::Filters::BeforeFilter:0x3eafda0>

これは正常な動作ですか、それとも何か間違ったことをしていますか?

4

2 に答える 2

3

デバッガーへの呼び出しの後に bs 行を追加して、何が起こるかを確認してください。

于 2009-05-29T22:25:00.837 に答える
0

なぜ機能しないのかわかりませんが、controller.params と controller.session を介して変数にアクセスできます

于 2009-05-29T22:22:03.900 に答える