【问题标题】:Sinatra: how to store params hash in a session?Sinatra:如何在会话中存储参数哈希?
【发布时间】:2014-10-31 21:08:18
【问题描述】:
enable :sessions
post '/sending_out' do
    session[:data] = params.inspect
    params.inspect
end

params.inspect 正好包含我想在会话变量中传递的哈希值。如果我从页面上的输出中复制它并在此处粘贴 session[:data] = {hash-from-page},我的进一步代码可以正常工作。

发生了什么事? params 不是一个简单的哈希吗?

【问题讨论】:

    标签: session hash sinatra


    【解决方案1】:

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

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

    configure do
        enable :sessions
    end
    

    【讨论】:

    • 我确实启用了它们,抱歉没有提及!
    • 哦,这很奇怪,我强烈怀疑这是另外一回事,因为我构建了一个测试项目,它对我来说工作得很好gist.github.com/fliiiix/7d67da8e01ac5303b71e
    猜你喜欢
    • 2011-11-17
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-27
    • 1970-01-01
    相关资源
    最近更新 更多