コード例 #1
0
ファイル: archive.py プロジェクト: SergeyTsaplin/django-fias
    def load(self, truncate=False, skip=False):
        for table_name in FIAS_TABLES:
            try:
                table = self.tables[table_name]
            except KeyError:
                log.debug('Table `{0}` not found in archive'.format(table_name))
                continue

            try:
                status = Status.objects.get(table=table_name)
            except Status.DoesNotExist:

                log.info('Filling table `{0}` to ver. {1}...'.format(table.full_name, self._version.ver))

                ldr = loader(table)
                ldr.load(truncate=truncate, update=False)

                status = Status(table=table.full_name, ver=self._version)
                status.save()

                self._process_deleted_table(table_name)
            else:
                log.warning('Table `{0}` has version `{1}`. '
                            'Please use --force-replace for replace '
                            'all tables. Skipping...'.format(status.table, status.ver))
コード例 #2
0
ファイル: archive.py プロジェクト: SergeyTsaplin/django-fias
    def load(self, truncate=False, skip=False):
        to_update = [s.table for s in Status.objects.filter(ver__ver__lt=self._version.ver)]
        for table_name in set(to_update) & set(FIAS_TABLES):
            try:
                table = self.tables[table_name]
            except KeyError:
                log.debug('Table `{0}` not found in archive'.format(table_name))
                continue

            status = Status.objects.get(table=table.full_name)

            log.info('Updating table `{0}` from {1} to {2}...'.format(table.full_name,
                                                                      status.ver.ver,
                                                                      self._version.ver))

            ldr = loader(table)
            try:
                ldr.load(truncate=False, update=True)
            except XMLSyntaxError as e:
                msg = 'XML file for table `{0}` is broken. Data not loaded!'.format(table.full_name)
                if skip:
                    log.error(msg)
                else:
                    raise BadArchiveError(msg)
            else:
                status.ver = self._version
                status.save()

            self._process_deleted_table(table_name)
コード例 #3
0
    def load(self, truncate=False, skip=False):
        for table_name in FIAS_TABLES:
            try:
                table = self.tables[table_name]
            except KeyError:
                log.debug(
                    'Table `{0}` not found in archive'.format(table_name))
                continue

            try:
                status = Status.objects.get(table=table_name)
            except Status.DoesNotExist:

                log.info('Filling table `{0}` to ver. {1}...'.format(
                    table.full_name, self._version.ver))

                ldr = loader(table)
                ldr.load(truncate=truncate, update=False)

                status = Status(table=table.full_name, ver=self._version)
                status.save()

                self._process_deleted_table(table_name)
            else:
                log.warning('Table `{0}` has version `{1}`. '
                            'Please use --force-replace for replace '
                            'all tables. Skipping...'.format(
                                status.table, status.ver))
コード例 #4
0
    def load(self, truncate=False, skip=False):
        to_update = [
            s.table
            for s in Status.objects.filter(ver__ver__lt=self._version.ver)
        ]
        for table_name in set(to_update) & set(FIAS_TABLES):
            try:
                table = self.tables[table_name]
            except KeyError:
                log.debug(
                    'Table `{0}` not found in archive'.format(table_name))
                continue

            status = Status.objects.get(table=table.full_name)

            log.info('Updating table `{0}` from {1} to {2}...'.format(
                table.full_name, status.ver.ver, self._version.ver))

            ldr = loader(table)
            try:
                ldr.load(truncate=False, update=True)
            except XMLSyntaxError as e:
                msg = 'XML file for table `{0}` is broken. Data not loaded!'.format(
                    table.full_name)
                if skip:
                    log.error(msg)
                else:
                    raise BadArchiveError(msg)
            else:
                status.ver = self._version
                status.save()

            self._process_deleted_table(table_name)
コード例 #5
0
 def _get_loader(self, name):
     return loader(self._get_table(name))
コード例 #6
0
 def _get_loader(self, name):
     return loader(self._get_table(name))