sql >> Database >  >> NoSQL >> MongoDB

Schakel collectie in mongoengine voor zoekquery

Vanaf mongoengine==0.10.0 mongoengine.context_managers.switch_collection(cls, collection_name) gebruikt als "with switch_collection(Group, 'group1') as Group:" in het voorbeeld werkt niet binnen functies. Het geeft unboundlocalerror . Een eenvoudige manier om met bestaande bronnen om te gaan is:

Om te krijgen:

new_group = Group.switch_collection(Group(),'group1')
from mongoengine.queryset import QuerySet
new_objects = QuerySet(Group,new_group._get_collection())

Gebruik new_objects.all() om alle objecten enz. te krijgen.

Om op te slaan:

group_obj = Group()
group_obj.switch_collection('group2')
group_obj.save()


  1. MongoDB aan met Docker kon geen verbinding maken met server [localhost:27017] bij eerste verbinding

  2. Hoe een ingesloten document in een ingesloten document in mangoest bijwerken?

  3. record ophalen met ten minste één bijbehorend object

  4. Hoe meerdere js-bestanden naar de database te laden met behulp van mongo-shell?