ruby-on-rails – 在Ruby哈希中提取`Moped :: BSON :: Document`属性

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在Ruby哈希中提取`Moped :: BSON :: Document`属性前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在Mongoid 3.0.21中,如何将所有模型的属性作为纯 Ruby哈希?

调用#attributes或#raw_attributes会返回Moped :: BSON :: Document.虽然它实际上扩展了Hash,但是几个哈希方法不能按预期工作.特别是#except返回未修改的self,而不是散列给定键的hash.

更新:Moped :: BSON :: Document正确继承了Hash的行为.我试图用符号命名属性,而不是字符串,这就是为什么#except不起作用的原因.不久:做除了(‘图片’),除了(:图片).

解决方法

Hash[e.attributes]

其中e是您的模型实例

猜你在找的Ruby相关文章