Session 如何从模块访问Sinatra会话

Session 如何从模块访问Sinatra会话,session,sinatra,ruby-1.9,Session,Sinatra,Ruby 1.9,我正在用Ruby 1.9.2和Sinatra 1.3开发一个应用程序。 我有一个助手模块,需要访问会话数据。 这是我的模块的一个片段 require 'sinatra' module SessionHelper def current_user session['current_user'] end end 这在ruby 1.8.7中运行得很好,但是当我使用ruby 1.9.2运行应用程序时,我收到一个错误消息:未定义的局部变量或SessionHelper:Module的

我正在用Ruby 1.9.2和Sinatra 1.3开发一个应用程序。 我有一个助手模块,需要访问会话数据。 这是我的模块的一个片段

require 'sinatra'

module SessionHelper

  def current_user
    session['current_user']
  end

end

这在ruby 1.8.7中运行得很好,但是当我使用ruby 1.9.2运行应用程序时,我收到一个错误消息:
未定义的局部变量或SessionHelper:Module的方法“session”:

require 'sinatra/base'

module Sinatra
  module SessionHelper
    def current_user
      session['current_user']
    end
  end
  register current_user
end
然后在某个地方的控制器中,您可以执行以下操作:

user = current_user
查看上的文档-它也适用于其他自定义模块

希望有帮助