diff options
author | ttt | 2017-05-13 00:29:47 +0530 |
---|---|---|
committer | ttt | 2017-05-13 00:29:47 +0530 |
commit | abf599be33b383a6a5baf9493093b2126a622ac8 (patch) | |
tree | 4c5ab6e0d935d5e65fabcf0258e4a00dd20a5afa /lib/python2.7/site-packages/django/contrib/gis/management/commands/inspectdb.py | |
download | SBHS-2018-Rpi-abf599be33b383a6a5baf9493093b2126a622ac8.tar.gz SBHS-2018-Rpi-abf599be33b383a6a5baf9493093b2126a622ac8.tar.bz2 SBHS-2018-Rpi-abf599be33b383a6a5baf9493093b2126a622ac8.zip |
added all server files
Diffstat (limited to 'lib/python2.7/site-packages/django/contrib/gis/management/commands/inspectdb.py')
-rw-r--r-- | lib/python2.7/site-packages/django/contrib/gis/management/commands/inspectdb.py | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/python2.7/site-packages/django/contrib/gis/management/commands/inspectdb.py b/lib/python2.7/site-packages/django/contrib/gis/management/commands/inspectdb.py new file mode 100644 index 0000000..bbf40e1 --- /dev/null +++ b/lib/python2.7/site-packages/django/contrib/gis/management/commands/inspectdb.py @@ -0,0 +1,29 @@ +from django.core.management.commands.inspectdb import Command as InspectDBCommand + +class Command(InspectDBCommand): + db_module = 'django.contrib.gis.db' + gis_tables = {} + + def get_field_type(self, connection, table_name, row): + field_type, field_params, field_notes = super(Command, self).get_field_type(connection, table_name, row) + if field_type == 'GeometryField': + geo_col = row[0] + # Getting a more specific field type and any additional parameters + # from the `get_geometry_type` routine for the spatial backend. + field_type, geo_params = connection.introspection.get_geometry_type(table_name, geo_col) + field_params.update(geo_params) + # Adding the table name and column to the `gis_tables` dictionary, this + # allows us to track which tables need a GeoManager. + if table_name in self.gis_tables: + self.gis_tables[table_name].append(geo_col) + else: + self.gis_tables[table_name] = [geo_col] + return field_type, field_params, field_notes + + def get_meta(self, table_name): + meta_lines = super(Command, self).get_meta(table_name) + if table_name in self.gis_tables: + # If the table is a geographic one, then we need make + # GeoManager the default manager for the model. + meta_lines.insert(0, ' objects = models.GeoManager()') + return meta_lines |