Динамический виджет поля пользовательской модели Django
У меня есть пользовательское определение поля моделей Django, используя следующий код:
class EncryptedField(models.Field):
description = "A field containing encrypted data. Encryption and decryption are handled upon reading and writing."
def __init__(self, data_type, *args, **kwargs):
self.data_type = data_type
super().__init__(*args, **kwargs)
def deconstruct(self):
name, path, args, kwargs = super().deconstruct()
# Only include kwarg if it's not the default
kwargs['data_type'] = self.data_type
return name, path, args, kwargs
Я хочу иметь эту поддержку нескольких типов данных, поэтому, если они проходят в data_type="date"
Я хотел бы, чтобы форма автоматически выбирала ввод даты (например, в Django Admin).
Как я могу иметь виджет динамической формы, основанный на том, какой тип данных они выбирают в определении своих моделей?