您的位置:首页 > 其它

边学边做ROR(错误ActionDispatch::Cookies::CookieOverflow)

2011-05-17 09:25 316 查看
我在程序html.rb中代码如下:
<%= button_to "Add to Cart" , :action => 'add_to_cart', :id => product %>
嵌套在一个循环里
但是跑出来的画面,有3笔数据,源代码分别指向的url是add_to_cart/2,add_to_cart/4,add_to_cart/3。
我点第二个链接的时候报的错。

那么,我首先去调查一下是否把session存入了数据库中。在命令行查询sqlite3:
要进入所建工程的目录下,有个db文件夹,在最初安装sqlite3时默认安装了名为development.sqlite3的数据库,因此要通过命令行进入该库:
>cd db
db>sqlite3 development.sqlite3
sqlite>.tables 查看下该库下创建了几张表
sqlite>select * from sessions
看到是空表。于是,在/config/initializers下打开session_store.rb,将最后一句注释放开,如下:
Depot::Application.config.session_store :active_record_store
重启服务后,发现这个Cookies的溢出错误解决了。
然后查询一下sessions表,有数据了。
后来查了一下,cookie的大小有4k的限制,如果超过了4k,rails就会报错:Cookies::CookieOverflow。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐