2011-08-18 74 views
9

希望標題的內容不言自明。Mongoid相當於ActiveRecord的`serialize`方法

我使用mongoid作爲我的ORM for Rails應用程序,並且我想知道是否有人知道它是否與ActiveRecord的serialize方法等價。我已經瀏覽了mongoid文檔,但還沒有找到任何東西。

這裏的模型的例子:

class Foo 
    include Mongoid::Document 

    field :params, type: String 
    serialize :params   # method from ActiveRecord 
end 

提前感謝!

回答

18

只要可以存儲在字段數組和哈希中,您不需要使用MongoDB序列化。

field :hash_params, type: Hash 
field :array_params, type: Array 
+0

非常感謝 - 不容相信我忘了這一點(仍用於SQL)。只要stackoverflow讓我接受你的答案。 – mportiz08

0

有時你需要使用Value Object模式和像composed_of相同的功能,有些人希望在未來,不是你想使用標準的活動記錄的serialize棄用此功能。 Mongoid提供相同的功能,以創造價值對象避免serialize方法的樣子,你可以在這裏提供http://mongoid.org/en/mongoid/docs/documents.html#custom_fields您的自定義序列:

class Foo 
    include Mongoid::Document 

    field :params, type: String 
    field :custom_params , type: MyCustomParamsType 
end 
相關問題