Aes key
Si la clef secret aes n'est pas la bonne, ca crash salement :
In [3]: OptionalTopologie.objects.first()
---------------------------------------------------------------------------
UnicodeDecodeError Traceback (most recent call last)
/var/www/re2o/re2o/aes_field.py in from_db_value(self, value, *args, **kwargs)
91 try:
---> 92 return decrypt(settings.AES_KEY, binascii.a2b_base64(value)).decode('utf-8')
93 except Exception as e:
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xde in position 1: invalid continuation byte
During handling of the above exception, another exception occurred:
ValueError Traceback (most recent call last)
<ipython-input-3-22a3f93bae50> in <module>()
----> 1 OptionalTopologie.objects.first()
/usr/lib/python3/dist-packages/django/db/models/manager.py in manager_method(self, *args, **kwargs)
83 def create_method(name, method):
84 def manager_method(self, *args, **kwargs):
---> 85 return getattr(self.get_queryset(), name)(*args, **kwargs)
86 manager_method.__name__ = method.__name__
87 manager_method.__doc__ = method.__doc__
/usr/lib/python3/dist-packages/django/db/models/query.py in first(self)
554 Returns the first object of a query, returns None if no match is found.
555 """
--> 556 objects = list((self if self.ordered else self.order_by('pk'))[:1])
557 if objects:
558 return objects[0]
/usr/lib/python3/dist-packages/django/db/models/query.py in __iter__(self)
254 - Responsible for turning the rows into model objects.
255 """
--> 256 self._fetch_all()
257 return iter(self._result_cache)
258
/usr/lib/python3/dist-packages/django/db/models/query.py in _fetch_all(self)
1085 def _fetch_all(self):
1086 if self._result_cache is None:
-> 1087 self._result_cache = list(self.iterator())
1088 if self._prefetch_related_lookups and not self._prefetch_done:
1089 self._prefetch_related_objects()
/usr/lib/python3/dist-packages/django/db/models/query.py in __iter__(self)
63 for f in select[model_fields_start:model_fields_end]]
64 related_populators = get_related_populators(klass_info, select, db)
---> 65 for row in compiler.results_iter(results):
66 obj = model_cls.from_db(db, init_list, row[model_fields_start:model_fields_end])
67 if related_populators:
/usr/lib/python3/dist-packages/django/db/models/sql/compiler.py in results_iter(self, results)
793 for row in rows:
794 if converters:
--> 795 row = self.apply_converters(row, converters)
796 yield row
797
/usr/lib/python3/dist-packages/django/db/models/sql/compiler.py in apply_converters(self, row, converters)
777 value = row[pos]
778 for converter in convs:
--> 779 value = converter(value, expression, self.connection, self.query.context)
780 row[pos] = value
781 return tuple(row)
/var/www/re2o/re2o/aes_field.py in from_db_value(self, value, *args, **kwargs)
92 return decrypt(settings.AES_KEY, binascii.a2b_base64(value)).decode('utf-8')
93 except Exception as e:
---> 94 raise ValueError(value)
95
96 def get_prep_value(self, value):
ValueError: 0ZpzvqBCtWX5qZf9syS69w==