Лапшекодим валидацию, или запрещаем вводить неправильные данные?
Странная ошибка - при редактировании есть после сохранения нет. Перезаписал.
У меня так тоже бывает.
Вы же сами видите, что на форме просто куча лишней и дублирующей информации (типа диапазона для возраста - и в названии поля, и в сообщении об ошибке). Для такой формы достаточно "поля со звёздочкой обязательны для заполнения".
Ещё интересно, что как раз, как я советовал, в названиях полей указаны допустимые интервалы и прочие подсказки. Человеку не интересно играть в вопрос-ответ с машиной. Его дико раздражает, когда очевидный фидбек приходит лишь после неправильных данных. Так же его раздражает читать портянку, написанную красным шрифтом. Всю эту писанину можно опустить, и оставить одну надпись, как я сказал и звёздочки. А ввести возраст вне диапазона поможет контрол, который просто не может принимать значения вне диапазона (офигеть рокет сайенс!). Валидация тогда будет проходить внутри контрола, без обращения к другим слоям. Причём валидация будет молчаливой - безо всякой красной мазни, знаков восклицания и красных портянок. А если кто-то не понимает, что "Пароль" и "Повторите пароль" должны совпадать, а "Возраст (от 18 до 70)" не позволяет ввести вне этого диапазона, то ему явно не нужно пользоваться вашим сервисом. Таким людям нужен помощник. Ну мало ли что, разные люди бывают - деменция там старческая, принципиальная жизненная позиция нигде и никогда не повторять пароли, ещё чего.