Иметь отдельный класс под каждый тип таблицы неудобно и плохо скейлится, поэтому предлагаю заменить класс SensitiveBase на декоратор @sensitive, который будет устанавливать аттрибуты на Base.
Так же стоит расширить класс Base, чтобы он позволял добавлять кастомные __table_args__, даже если под это нет декторатора (соответствующий метод в Base будет проверять наличие аттрибута наподобие __table_args_custom__ на классе, и если он есть, мёрждить их в то, что он возвращает, через какой-нибуь dict.update)
Всё это вообще нужно, чтобы по аналогии с @sensitive добавить декторатор @encrypted.
Иметь отдельный класс под каждый тип таблицы неудобно и плохо скейлится, поэтому предлагаю заменить класс
SensitiveBaseна декоратор@sensitive, который будет устанавливать аттрибуты наBase.Так же стоит расширить класс Base, чтобы он позволял добавлять кастомные
__table_args__, даже если под это нет декторатора (соответствующий метод вBaseбудет проверять наличие аттрибута наподобие__table_args_custom__на классе, и если он есть, мёрждить их в то, что он возвращает, через какой-нибуьdict.update)Всё это вообще нужно, чтобы по аналогии с
@sensitiveдобавить декторатор@encrypted.