Хочу хранить в базе binary, а в приложении работать как с обычным полем. Есть идея сделать прозрачную обработку в beforeSave, но это не выглядит хорошим решением потому что к полю есть прямой доступ через класс, потому что есть метод load который перезапишет поле.
Нужно буквально следующее:
db (binary) <=> model (binary <=> text) <=> text.
Тоже долго болела эта задача, в итоге решилось через afterfind и insertInternal/updateInternal. Причем в insertInternal/updateInternal лучше не модифицировать данные через hex2bin, а вставлять в базу виртуальные измененные значения.