Пример #1
0
 def sort_tree(self):
     self.all().update(tree_sort=None)
     root = self.get(kind=self.model.KIND.international)
     i = 1
     root.tree_sort = i
     with disable_auto_indexing(model=self.model):
         root.save()
     for child in root.children.order_by('kind', 'code', 'name'):
         i += 1
         child.tree_sort = i
         with disable_auto_indexing(model=self.model):
             child.save()
     orgs = self.filter(kind__in=[
         self.model.KIND.chapter,
         self.model.KIND.chorus,
         self.model.KIND.quartet,
     ]).order_by(
         'kind',
         'name',
     )
     for org in orgs:
         i += 1
         org.tree_sort = i
         with disable_auto_indexing(model=self.model):
             org.save()
     return
Пример #2
0
 def sort_tree(self):
     self.all().update(tree_sort=None)
     root = self.get(kind=self.model.KIND.international)
     i = 1
     root.tree_sort = i
     with disable_auto_indexing(model=self.model):
         root.save()
     for child in root.children.order_by('kind', 'code', 'name'):
         i += 1
         child.tree_sort = i
         with disable_auto_indexing(model=self.model):
             child.save()
     orgs = self.filter(
         kind__in=[
             self.model.KIND.chapter,
             self.model.KIND.chorus,
             self.model.KIND.quartet,
         ]
     ).order_by(
         'kind',
         'name',
     )
     for org in orgs:
         i += 1
         org.tree_sort = i
         with disable_auto_indexing(model=self.model):
             org.save()
     return
Пример #3
0
 def denormalize(self, cursor=None):
     groups = self.filter(status=self.model.STATUS.active)
     if cursor:
         groups = groups.filter(modified__gte=cursor, )
     for group in groups:
         group.denormalize()
         with disable_auto_indexing(model=self.model):
             group.save()
     return
Пример #4
0
 def denormalize(self, cursor=None):
     groups = self.filter(status=self.model.STATUS.active)
     if cursor:
         groups = groups.filter(
             modified__gte=cursor,
         )
     for group in groups:
         group.denormalize()
         with disable_auto_indexing(model=self.model):
             group.save()
     return
Пример #5
0
    def test_disable_auto_indexing_as_context_manager(self):
        """Test that the `disable_auto_indexing` should work as a context manager"""

        with patch.object(algolia_engine, 'save_record') as mocked_save_record:
            with disable_auto_indexing():
                WebsiteFactory()

        mocked_save_record.assert_not_called()

        with patch.object(algolia_engine, 'save_record') as mocked_save_record:
            WebsiteFactory()

        mocked_save_record.assert_called_once()
Пример #6
0
    def update_seniors(self):
        quartets = self.filter(
            kind=self.model.KIND.quartet,
            status__gt=0,
            mc_pk__isnull=False,
        )

        for quartet in quartets:
            prior = quartet.is_senior
            is_senior = quartet.get_is_senior()
            if prior != is_senior:
                quartet.is_senior = is_senior
                with disable_auto_indexing(model=self.model):
                    quartet.save()
        return
Пример #7
0
    def update_seniors(self):
        quartets = self.filter(
            kind=self.model.KIND.quartet,
            status__gt=0,
            mc_pk__isnull=False,
        )

        for quartet in quartets:
            prior = quartet.is_senior
            is_senior = quartet.get_is_senior()
            if prior != is_senior:
                quartet.is_senior = is_senior
                with disable_auto_indexing(model=self.model):
                    quartet.save()
        return