具有等号的ApplicationController方法

时间:2014-03-23 04:36:00

标签: ruby-on-rails

在Rails 4中我试图这样做:

class ApplicationController < ActionController::Base

 # does not work
  def x=(value)
    session[:x] = value
  end

  # I have to do this instead
  def set_x(value)
    session[:x] = value
  end 

end

当我尝试从子控制器调用x = 1时,我没有收到错误,但是会话变量没有设置。尽管如此,正常运行set_x 1仍可正常工作。

1 个答案:

答案 0 :(得分:1)

我认为这是范围问题,而不是致电x = 1,请尝试致电self.x = 1