Rails 7.1迁移:消除serialize方法弃用警告的解决方案
Rails 7.1 serialize方法弃用警告的解决办法
Rails 7.1对serialize方法的参数规则做了调整,原来把序列化目标类作为位置参数(或错误用type:关键字)的写法会触发弃用警告,到7.2会彻底移除支持。
触发警告的写法
不管是直接传位置参数,还是错误使用type:关键字,都会触发警告:
# 旧的位置参数写法 serialize :reddoorz_property_ids, Object # 错误的关键字参数写法(用了type而非class) serialize :reddoorz_property_ids, type: Object
正确的写法
把目标类通过class:关键字参数传递即可消除警告:
serialize :reddoorz_property_ids, class: Object
修改后无需额外配置,功能和之前完全一致,重启服务或重新运行代码后警告就会消失。
内容的提问来源于stack exchange,提问作者Krapi Rastogi
相关产品推荐
相关产品推荐

