Session Sinatra:如何在会话中存储参数哈希?

Session Sinatra:如何在会话中存储参数哈希?,session,hash,sinatra,Session,Hash,Sinatra,params.inspect正好包含我要在会话变量中传递的哈希。如果我从页面上的输出复制它并粘贴到这里会话[:data]={hash from page},我的后续代码就可以正常工作 发生什么事了?参数不是简单的散列吗?会话是。您需要启用它们,然后使用路由和视图中的会话哈希 这意味着您的代码是正确的您只是忘记了启用会话,所以只需添加: enable :sessions post '/sending_out' do session[:data] = params.inspect p

params.inspect正好包含我要在会话变量中传递的哈希。如果我从页面上的输出复制它并粘贴到这里会话[:data]={hash from page},我的后续代码就可以正常工作

发生什么事了?参数不是简单的散列吗?

会话是。您需要启用它们,然后使用路由和视图中的会话哈希

这意味着您的代码是正确的您只是忘记了启用会话,所以只需添加:

enable :sessions
post '/sending_out' do
    session[:data] = params.inspect
    params.inspect
end

我确实启用了它们,很抱歉没有提及!哦,这很奇怪,我强烈怀疑这是另外一回事,因为我建立了一个测试项目,它对我来说工作得很好
configure do
    enable :sessions
end