Yuego / django-fias

Other
112 stars 70 forks source link

AttributeError: 'NoneType' object has no attribute '_meta' #82

Closed ericovva closed 6 years ago

ericovva commented 6 years ago

Пытаюсь наполнить пустую базу, архивы пробовал различные, вывожу в коде:

 20 class DBFTable(Table):
 21 
 22     def __init__(self, *args, **kwargs):
 23         super(DBFTable, self).__init__(*args, **kwargs)
 24         print(self.name)
 25         print(args)
 26         print(kwargs)
 27         self.related_fields = dict({
 28            (f.name, f.rel.to) for f in self.model._meta.get_fields()
 29            if f.one_to_one or f.many_to_one
 30         })

{'filename': 'CENTERST.DBF', 'deleted': None, 'name': 'CENTERST', 'seq': None} curentst () {'filename': 'CURENTST.DBF', 'deleted': None, 'name': 'CURENTST', 'seq': None} addrobj () {'filename': 'DADDROB.DBF', 'deleted': 'D', 'name': 'ADDROB', 'seq': None} house () {'filename': 'DHOUSE.DBF', 'deleted': 'D', 'name': 'HOUSE', 'seq': None} normdoc () {'filename': 'DNORDOC.DBF', 'deleted': 'D', 'name': 'NORDOC', 'seq': None} eststat () {'filename': 'ESTSTAT.DBF', 'deleted': None, 'name': 'ESTSTAT', 'seq': None} flattype () {'filename': 'FLATTYPE.DBF', 'deleted': None, 'name': 'FLATTYPE', 'seq': None} Traceback (most recent call last): File "manage.py", line 22, in execute_from_command_line(sys.argv) File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/django/core/management/init.py", line 367, in execute_from_command_line utility.execute() File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/django/core/management/init.py", line 359, in execute self.fetch_command(subcommand).run_from_argv(self.argv) File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/django/core/management/base.py", line 294, in run_from_argv self.execute(*args, *cmd_options) File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/django/core/management/base.py", line 345, in execute output = self.handle(args, options) File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/fias/management/commands/fias.py", line 178, in handle tempdir=tempdir, File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/fias/importer/commands.py", line 64, in load_complete_data if tbl not in tablelist.tables: File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/fias/importer/source/tablelist.py", line 49, in tables table = TableFactory.parse(filename=filename) File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/fias/importer/table/init.py", line 35, in parse return cls(filename=filename, m.groupdict()) File "/Users/e.ovsepyan/.virtualenvs/ganesha_fias3/lib/python3.6/site-packages/fias/importer/table/dbf.py", line 28, in init (f.name, f.rel.to) for f in self.model._meta.get_fields() AttributeError: 'NoneType' object has no attribute '_meta'

Python 3.6.2 Django 1.10.8

ericovva commented 6 years ago

Готов разобраться с проблемой и допилить приложение, но нужно меня направить

ericovva commented 6 years ago

Проблема была в том, что ADDROBJ и другие таблицы в формате dbf в новых архивах разбиты на ~100 файлов, вроде как получилось импортировать xml