тут 2 варианта вижу: - disable, который ты описал
в этом случае значения не попадают на сервер
и поля у модели просто не обновляются, но у пользователя все равно отсается возможность убрать дизейбл с поля и перезаписать его
второй вариант, если не доверяешь пользователю - серверный
у модели есть правила валидации, а есть еще штука -- сценарии валидации
вот все правила, которые ты описываешь для модели, попадают в сценарий default