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

我在程序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。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值