diff options
| author | Mariusz Felisiak <felisiak.mariusz@gmail.com> | 2020-06-30 09:50:15 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-06-30 09:50:15 +0200 |
| commit | 615e32162ff646db3456b90fb4eaaecc33dd3e4e (patch) | |
| tree | e9798236fefd04963aa90e603b26ae46652524eb /django/contrib | |
| parent | a93425a37f4defdb31d4ca96bb3bf6da21f0b5ce (diff) | |
Fixed #31751 -- Fixed database introspection with cx_Oracle 8.
Diffstat (limited to 'django/contrib')
| -rw-r--r-- | django/contrib/gis/db/backends/oracle/introspection.py | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/django/contrib/gis/db/backends/oracle/introspection.py b/django/contrib/gis/db/backends/oracle/introspection.py index f97f0e1446..493fe74b46 100644 --- a/django/contrib/gis/db/backends/oracle/introspection.py +++ b/django/contrib/gis/db/backends/oracle/introspection.py @@ -1,14 +1,19 @@ import cx_Oracle from django.db.backends.oracle.introspection import DatabaseIntrospection +from django.utils.functional import cached_property class OracleIntrospection(DatabaseIntrospection): # Associating any OBJECTVAR instances with GeometryField. This won't work # right on Oracle objects that aren't MDSYS.SDO_GEOMETRY, but it is the # only object type supported within Django anyways. - data_types_reverse = DatabaseIntrospection.data_types_reverse.copy() - data_types_reverse[cx_Oracle.OBJECT] = 'GeometryField' + @cached_property + def data_types_reverse(self): + return { + **super().data_types_reverse, + cx_Oracle.OBJECT: 'GeometryField', + } def get_geometry_type(self, table_name, description): with self.connection.cursor() as cursor: |
