考虑以下代码
def results
params_list = []
params.each_pair {|key, value|
params_list.push([key,value])
}
p params_list
session.delete(:image)
p session[:image]
@image = Gchart.pie_3d(:size => '500x300',
:title => "Top 5 Results",
:legend => ["#{params_list[0][0]} #{params_list[0][1]}%" , 'source-document2 [22%]','source-document3','source-document4','source-document5'],
:data => [22, 21, 20, 18, 19])
session[:image] = @image
respond_to do |format|
format.html { head 200, content_type: "text/html" }
end
end
def check_results
if session[:image]
@image = session[:image]
respond_to do |format|
format.js
end
end
end
你可以看到我删除会话[:image]然后重新分配它。但是当从check_results动作调用它时,我得到了我存储的第一个会话。
为什么?