diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-08-21 22:49:29 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-08-21 22:49:29 +0200 |
commit | cca497f2b81fa6d7d7797953afda2bcffea8e066 (patch) | |
tree | b58ea191ef3cb985ed7d1c75ad60273128652638 /ishtar_common/data_importer.py | |
parent | 68e9e65081a102186c9ddf7b0caed0edb8f83561 (diff) | |
download | Ishtar-cca497f2b81fa6d7d7797953afda2bcffea8e066.tar.bz2 Ishtar-cca497f2b81fa6d7d7797953afda2bcffea8e066.zip |
Django 1.11: adapt all get_field_* to match the current Options API
Diffstat (limited to 'ishtar_common/data_importer.py')
-rw-r--r-- | ishtar_common/data_importer.py | 23 |
1 files changed, 11 insertions, 12 deletions
diff --git a/ishtar_common/data_importer.py b/ishtar_common/data_importer.py index c89e46f0b..fa8c6a2e0 100644 --- a/ishtar_common/data_importer.py +++ b/ishtar_common/data_importer.py @@ -36,6 +36,9 @@ from django.db.models import Q from django.template.defaultfilters import slugify from django.utils.translation import ugettext_lazy as _ +from ishtar_common.utils import get_all_field_names + + NEW_LINE_BREAK = '#####@@@#####' RE_FILTER_CEDEX = re.compile("(.*) *(?: *CEDEX|cedex|Cedex|Cédex|cédex *\d*)") @@ -487,7 +490,7 @@ class TypeFormater(StrChoiceFormater): values = copy.copy(self.defaults) values['label'] = value values['txt_idx'] = slugify(value) - if 'order' in self.model._meta.get_all_field_names(): + if 'order' in get_all_field_names(self.model): order = 1 q = self.model.objects.values('order').order_by('-order') if q.count(): @@ -1043,8 +1046,7 @@ class Importer(object): if self.test: return # manage unicity of items (mainly for updates) - if 'history_modifier' in \ - self.OBJECT_CLS._meta.get_all_field_names(): + if 'history_modifier' in get_all_field_names(self.OBJECT_CLS): data['history_modifier'] = self.history_modifier obj, created = self.get_object(self.OBJECT_CLS, data) @@ -1327,7 +1329,7 @@ class Importer(object): if not notempty: continue - field_names = model._meta.get_all_field_names() + field_names = get_all_field_names(model) for v in vals: if 'history_modifier' in field_names: if 'defaults' not in v: @@ -1444,13 +1446,12 @@ class Importer(object): self._set_importer_trigger(cls, attribute, data) return try: - field_object, model, direct, m2m = \ - cls._meta.get_field_by_name(attribute) + field_object = cls._meta.get_field(attribute) except FieldDoesNotExist: raise ImporterError(unicode( _(u"Importer configuration error: field \"{}\" does not exist " u"for {}.")).format(attribute, cls._meta.verbose_name)) - if m2m: + if field_object.many_to_many: m2ms += self._get_field_m2m(attribute, data, c_path, new_created, field_object) return @@ -1470,8 +1471,7 @@ class Importer(object): # we treat only dict formated values return # put history_modifier for every created item - if 'history_modifier' in \ - field_object.rel.to._meta.get_all_field_names(): + if 'history_modifier' in get_all_field_names(field_object.rel.to): data[attribute]['history_modifier'] = \ self.history_modifier try: @@ -1506,9 +1506,8 @@ class Importer(object): data.pop(attribute) continue if not data[attribute]: - field_object, model, direct, m2m = \ - cls._meta.get_field_by_name(attribute) - if m2m: + field_object = cls._meta.get_field(attribute) + if field_object.many_to_many: data.pop(attribute) continue if attribute != '__force_new': |