Je développe une application Ruby on Rails (3.2.6) et utilise MongoId (3.0.0) pour interagir avec la base de données MongoDB. Je me demande simplement comment enregistrer des objets JSON incorporés qui contiennent plusieurs niveaux et pas seulement un niveau.Comment créer un document multi-niveau en utilisant MongoId
J'ai obtenu une ancienne base de données MongoDB avec cette structure et simulaire, j'ai donc besoin d'enregistrer de nouveaux documents en utilisant la même structure.
C'est de la documentation et est utilisé pour ajouter un document un niveau:
Person.create(
first_name: "Heinrich",
last_name: "Heine"
)
Comment puis-je ajouter un objet avec cette structure:
{
"basic": {
"file_id": {
"file": "cf1952761a806c56c9bee60665418f02c"
},
"share": false,
"status": "created"
},
"data": {
"id": "4fd942dder5f5e88837300026e",
"name": "roberta",
"comment": "This is a comment"
}
}
Ah ok. Fondamentalement, ce dont j'ai besoin est de pouvoir contrôler comment les données sont sauvegardées (hiérarchie/structure) dans un document. Créer une classe pour les bases et les données semble être exagéré car elles ne sont là que pour fournir une hiérarchie. Est-il possible que vous pourriez me montrer un exemple comment utiliser votre deuxième option (champ Hash)? Très reconnaissant! –
Je pense que c'est bien d'avoir ces petites classes, surtout si vous essayez d'imposer une structure à vos données. Un hachage n'impose aucune structure. – Baruch
Oui, vous avez raison. Mais j'ai seulement besoin d'utiliser des modèles pour eux, pas de contrôleurs? –