/ / Equivalent mongoïde de la méthode `serialize` d'ActiveRecord - ruby, ruby-on-rails-3, sérialisation, mongodb, mongoid

Équivalent mongoïde de la méthode `serialize` d'ActiveRecord - ruby, ruby-on-rails-3, sérialisation, mongodb, mongoid

J'espère que le titre est assez explicite.

J'utilise mongoid comme mon ORM pour une application Rails, et je me demandais si quelqu'un savait si elle a un équivalent à ActiveRecord "s serialize méthode. J’ai «jeté un coup d’œil à la documentation mongoïde mais je n’ai encore rien trouvé».

Voici un exemple du modèle:

class Foo
include Mongoid::Document

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

Merci d'avance!

Réponses:

18 pour la réponse № 1

Vous n’avez pas besoin de sérialiser avec MongoDB dans la mesure où vous pouvez le stocker dans les champs Arrays et Hash.

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

0 pour la réponse № 2

Parfois, vous devez utiliser le modèle Value Object et la même fonction que compound_of. Certaines personnes souhaitent déconseiller cette fonction dans le futur et que vous souhaitez utiliser. serialize d'enregistrement actif standard. Mongoid fournit la même fonctionnalité pour créer un objet Value, évitez les serialize méthode, vous pouvez fournir votre sérialisation personnalisée ici 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