Je développe un système dans lequel les éléments peuvent être partagés avec d'autres utilisateurs via une clé d'accès. Je stocker les clés d'accès comme des champs dans un objet shareinfo
(intégré dans le document de l'élément), comme indiqué ci-dessous:Affichage des champs dans un objet mongodb
shareinfo:{
........
<nth key>: <permissions object - may be complex and large>
........
}
Lorsqu'un élément est accessible, je vérifie shareinfo.key et trouver si sa validité ou non.
Actuellement, à la liste des clés Je chargement (en Java) l'ensemble de l'objet shareinfo en mémoire et en cours d'exécution keySet() sur elle pour récupérer et remettre les clés tandis que le reste des données est gaspillée.
Voici le problème: je veux obtenir la liste des clés (à savoir les noms de champs d'objet) sans que les données d'accompagnement (car dans certains cas, les autorisations objet est sensiblement grande).
Je n'ai trouvé aucune requête dans les documents mongodb pour une telle requête. Je veux savoir si c'est possible ou pas? Ou existe-t-il un moyen optimisé de charger la liste des noms de champs dans l'application sans les valeurs de champ qui les accompagnent?
Je ne crains pas. Vous pouvez vérifier l'existence d'un champ, mais vous ne pouvez pas en obtenir la liste. – Thilo
Je suppose que la meilleure chose à faire serait de garder les objets d'autorisation aussi petits que possible. btw avez-vous une idée si cette chose est prévue pour le futur? –