Yii2. Множество входных данных для одного поля модели/БД
Как такие входные данные могут быть переведены в поле ДАТЫ в БД?
Заказчик настоял на таком способе ввода даты рождения пользователя. Сначала я думал просто объединить в одном поле в beforeValidate
, но после этого входные данные не смогут отображать дату, которая была введена из базы данных. Как избежать такого ограничения?
3
1 answers
- Добавьте эти 3 поля в качестве виртуальных свойств в класс модели.
- В
beforeValidate()
задайте значениеbirthdate
с помощью комбинации 3 виртуальных полей из формы. - Добавьте
afterFind()
в класс модели, где значение сохраненного в БД свойстваbirthdate
используется для установки значений 3 виртуальных свойств. - Теперь форма правильно содержит значения 3 полей, а объединенная дата сохраняется в БД.
3
Author: Bizley, 2016-11-25 12:32:03