У Django есть очень хорошая документация, которая описывает, как записать пользовательские поля базы данных и пользовательские теги шаблона и фильтры. Я не могу найти документ, который описывает, как записать пользовательские поля формы и виджеты. Этот документ существует?
Путем я смог записать, что пользовательские поля формы и виджеты путем чтения исходного кода Django и подражания тому, что я вижу там. Я знаю, что существуют все еще вещи о реализации полей и виджетов, которые я не полностью понимаю, потому что я не прочитал документа высокого уровня, который описывает их интерфейсы.
Я не нашел хорошей документации (особенно для виджетов). Я бы посоветовал продолжить делать это так, как вы, и решить конкретные проблемы Google (например, «создание MultiValueField и MultiWidget»).