MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Mongoengine, récupérant seulement une partie d'un MapField

Je vois qu'il y a un ticket pour ça :https://github.com/hmarr/mongoengine/ numéros/508

Fonctionne pour moi, voici un exemple de cas de test :

def test_only_with_mapfields(self):

    class BlogPost(Document):
        content = StringField()
        author = MapField(field=StringField())

    BlogPost.drop_collection()

    post = BlogPost(content='Had a good coffee today...', 
                    author={'name': "Ross", "age": "20"}).save()

    obj = BlogPost.objects.only('author__name',).get()

    self.assertEquals(obj.author['name'], "Ross")
    self.assertEquals(obj.author.get("age", None), None)