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是您的模型实例

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐