File: //lib/python3/dist-packages/django/contrib/gis/db/backends/mysql/__pycache__/schema.cpython-310.pyc
o
�a� � @ sJ d dl Z d dlmZ d dlmZ d dlmZ e �d�ZG dd� de�Z dS )� N)�
GeometryField)�OperationalError)�DatabaseSchemaEditorzdjango.contrib.gisc sr e Zd ZdZdZ� fdd�Z� fdd�Zd� fdd � Z� fd
d�Z� fdd
�Z � fdd�Z
dd� Zdd� Z� Z
S )�MySQLGISSchemaEditorz7CREATE SPATIAL INDEX %(index)s ON %(table)s(%(column)s)z!DROP INDEX %(index)s ON %(table)sc s t � j|i |�� g | _d S �N)�super�__init__�geometry_sql)�self�args�kwargs�� __class__� �M/usr/lib/python3/dist-packages/django/contrib/gis/db/backends/mysql/schema.pyr s
zMySQLGISSchemaEditor.__init__c s t |t�r
| js
dS t� �|�S )NT)�
isinstancer �$_supports_limited_data_type_defaultsr �skip_default)r
�fieldr
r r r s z!MySQLGISSchemaEditor.skip_defaultFc sl t � �|||�}t|t�r4|jr4|js4| jjj}|j j
}| j�| j
|| �||��||�||j�d� � |S )N)�index�table�column)r �
column_sqlr r �
spatial_index�null�
connection�ops�
quote_name�_meta�db_tabler �append�sql_add_spatial_index�_create_spatial_index_namer )r
�modelr �include_defaultr �qnr r
r r r s
��zMySQLGISSchemaEditor.column_sqlc s t � �|� | �� d S r )r �create_model�create_spatial_indexes)r
r# r
r r r&