在Mongoid 3.0.21中,如何将所有模型的属性作为纯
Ruby哈希?
调用#attributes或#raw_attributes会返回Moped :: BSON :: Document.虽然它实际上扩展了Hash,但是几个哈希方法不能按预期工作.特别是#except返回未修改的self,而不是散列给定键的hash.
更新:Moped :: BSON :: Document正确继承了Hash的行为.我试图用符号命名属性,而不是字符串,这就是为什么#except不起作用的原因.不久:做除了(‘图片’),除了(:图片).
解决方法
Hash[e.attributes]
其中e是您的模型实例