我想使用JSON序列化将查询结果保存到redis中并进行查询。从JSON反序列化ActiveRecord
获取查询结果以JSON是很简单:
JSON.generate(Model.all.collect {|item| item.attributes})
但是我没有找到反序列化回ActiveRecord的一种合适的方式。最直接的方法:
给我一个错误:
WARNING: Can't mass-assign protected attributes: id
所以ID获取空。我想为OpenStruct代替ActiveRecord使用OpenStruct,但我确信有更好的方法。
虽然我很惊讶,但没有内置的支持。这听起来不错。谢谢 – mbdev
只是站起来,我就是这样。如果你希望ActiveRecord认识到它不是数据库中的新对象,你可能想使用'allocate'而不是'new' –