o
    h                      @   sT   d dl mZ d dlmZ d dlmZmZ d dlmZm	Z	m
Z
mZ G dd deZdS )    )apps)BaseCommand)
connectionmodels)BaseLogEntryBootstrapTranslatableMixinReferenceIndexTranslatableMixinc                   @   s"   e Zd ZdZdddZdd ZdS )	CommandzcConverts UUID columns from char type to the native UUID type used in MariaDB 10.7+ and Django 5.0+.Fc                 C   s   |j |j|krd S |j jsd S tj|dd}|| tj|d}|| t	 }|
||| W d    d S 1 s?w   Y  d S )N$   )null
max_lengthr   )_meta	get_fieldmodelmanagedr   	CharFieldset_attributes_from_name	UUIDFieldr   schema_editoralter_field)selfr   
field_namer   	old_field	new_fieldr    r   q/var/www/html/ndineBlogger/venv/lib/python3.10/site-packages/wagtail/management/commands/convert_mariadb_uuids.pyconvert_field   s   


"zCommand.convert_fieldc                 K   sl   |  td t D ])}t|tr| j |ddd q
t|tr(| j |ddd q
t|tr3|  |d q
d S )Ncontent_path_hashuuidTr   translation_key)r   r   r   
get_models
issubclassr   r   r	   )r   optionsr   r   r   r   handle"   s   


zCommand.handleN)F)__name__
__module____qualname__helpr   r%   r   r   r   r   r
      s    
r
   N)django.appsr   django.core.management.baser   	django.dbr   r   wagtail.modelsr   r   r   r	   r
   r   r   r   r   <module>   s
    