def save(self): from website.search.search import update_institution update_institution(self) for key, value in self.attribute_map.iteritems(): if getattr(self, key) != getattr(self.node, value): setattr(self.node, value, getattr(self, key)) self.node.save()
def update_search(self): from website.search.search import update_institution from website.search.exceptions import SearchUnavailableError try: update_institution(self) except SearchUnavailableError as e: logger.exception(e)
def update_search(self): from website.search.search import update_institution, update_node from website.search.exceptions import SearchUnavailableError try: update_institution(self) except SearchUnavailableError as e: logger.exception(e) for node in self.nodes.filter(is_deleted=False): try: update_node(node, async_update=False) except SearchUnavailableError as e: logger.exception(e)
def update_search(self): from website.search.search import update_institution, update_node from website.search.exceptions import SearchUnavailableError try: update_institution(self) except SearchUnavailableError as e: logger.exception(e) saved_fields = self.get_dirty_fields() if saved_fields and bool(self.pk): for node in self.nodes.filter(is_deleted=False): try: update_node(node, async=False) except SearchUnavailableError as e: logger.exception(e)
def update_or_create(inst_data): inst = Institution.load(inst_data['_id']) if inst: for key, val in inst_data.iteritems(): setattr(inst.node, inst.attribute_map[key], val) changed_fields = inst.node.save() if changed_fields: print('Updated {}: {}'.format(inst.name, changed_fields)) update_institution(inst) return inst, False else: inst = Institution(None) inst_data = {inst.attribute_map[k]: v for k, v in inst_data.iteritems()} new_inst = Node(**inst_data) new_inst.save() inst = Institution.load(new_inst.institution_id) print('Added new institution: {}'.format(new_inst.institution_id)) update_institution(inst) return new_inst, True
def migrate_institutions(index): for inst in Institution.find(Q('is_deleted', 'ne', True)): update_institution(inst, index)
def migrate_institutions(index): for inst in Institution.objects.filter(is_deleted=False): update_institution(inst, index)