我通过某人方法将数组存储到cookie:
def someone
cookies[:test] = JSON.generate [@page.image, @page.title]
end
但是我想使用cookie [:test]可以将更多信息存储为“ <<”而不是“ =”,
喜欢(会收到错误):
def someone
cookies[:test] << JSON.generate [@page.image, @page.title]
end
现在,cookies[:test].inspect
是[[@page.image, @page.title], [@page.image, @page.title]]
。
怎么做?
答案 0 :(得分:1)
我认为不可能直接附加到Cookie;它存储为字符串(JSON.generate返回),因此您需要反序列化,追加,然后重新序列化并存储:
current = JSON.parse cookies[:test]
current << [@page.image, @page.title]
cookies[:test] = JSON.generate current
或更简洁:
cookies[:test] = (JSON.parse(cookies[:test]) + [[@page.image, @page.title]]).to_json