ruby-on-rails - 我如何在 Rails 的 lib 类中访问 session

标签 ruby-on-rails ruby ruby-on-rails-3 session

我正在用 Rails 3 开发一个应用程序

我如何在 Rails 的 lib 类中访问 session 。

谢谢

最佳答案

在 Rails 中,ApplicationController 有一个名为 session 的方法,使用 session[:user_id] 来获取 session 值。因此,如果您想在 lib 中使用 session ,则需要在 lib 类中定义一个将 session 作为参数访问的方法。

lib/your_class.rb

class YourClass

  def set_session(session_)
    @mysession = session_ 
  end

  def session
    return @mysession
  end

end

简单的方法是,您可以使用模块而不是 lib 类,并将该模块包含在您的 Controller 中。然后你可以在 lib 模块中以任何方式使用 session[:user_id]

关于ruby-on-rails - 我如何在 Rails 的 lib 类中访问 session ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6546873/

相关文章:

ruby-on-rails - Angular 资源不调用我的错误回调函数

ruby-on-rails - Ruby on Rails gem 让密码更安全?

ruby-on-rails - 不同的前缀 : "/" and "http:/localhost:3000" with devise

ruby-on-rails - Rails中where查询的结果

ruby-on-rails - 销毁管理 session 导致 http get 请求 rails 4

html - 在 Rails 3 中自动刷新页面

ruby-on-rails - ActionController::估值中的UrlGenerationError#new

ruby - resque redis 套接字超时

ruby-on-rails - Elasticsearch 控制台

javascript - Highcharts - 如何在 Rails 3 中拆分多个图表