Я создаю класс формы в Python для создания и проверки HTML-форм. Каждое поле имеет связанный виджет, который определяет способ визуализации поля.
Когда виджет создан, он передается в значении (по умолчанию), чтобы он знал, что отображать при первом отображении. После отправки формы у виджета запрашивается значение. Я делегирую это виджету, а не просто извлекаю его из данных POST, потому что виджет может состоять из нескольких входов HTML (например, селектор месяца / дня / года). Только виджет знает, как объединить их в одно значение.
Проблема в том, Я не знаю, должен ли виджет всегда принимать строку и всегда возвращать строку для согласованности, или принимать и возвращать тип данных в соответствии с его назначением (т.е. вероятно, селектор даты должен возвращать объект DateTime).
Философия, лежащая в основе моего урока, - это «смешивать и сочетать». Вы выбираете, какой виджет вы хотите, и какие валидаторы / форматеры / конвертеры вы хотите запустить на нем. Что, я полагаю, подойдет для «использования строк» и позволит разработчику определиться с типом данных после слов, но ... я не могу придумать хорошего, но. Предвидите ли вы какие-либо проблемы с этим подходом?