如何使用Ruby Sinatra在会话中存储用户id
这是我的UserService类,一旦我的路由得到singup请求,它将调用UserService.singup来执行注册逻辑。我想在会话中保存用户id,但它就是不起作用 它不断向我显示“NameError-UserService:Class的未定义局部变量或方法'session'”如何使用Ruby Sinatra在会话中存储用户id,ruby,web,sinatra,Ruby,Web,Sinatra,这是我的UserService类,一旦我的路由得到singup请求,它将调用UserService.singup来执行注册逻辑。我想在会话中保存用户id,但它就是不起作用 它不断向我显示“NameError-UserService:Class的未定义局部变量或方法'session'” 会话哈希仅在控制器、视图、控制器测试和视图测试中可用,在模型中不可用。会话无法存储在模型中,因为它会破坏MVC结构,但您可以使用线程而不是会话。请参阅以下链接: class UserService de
会话哈希仅在控制器、视图、控制器测试和视图测试中可用,在模型中不可用。会话无法存储在模型中,因为它会破坏MVC结构,但您可以使用线程而不是会话。请参阅以下链接:
class UserService
def self.signup(params)
@user = User.new(params)
if @user.save
session[:user_id] = @user.id
make_json(200, 0, "Signup success!", @user)
else
make_json(400, 0, "Signup success!")
end
end
end