Как настроить динамические значения по умолчанию для объектов OR9 CF9?Динамические значения по умолчанию в CF9 ORM
Например, я знаю, что могу установить свойство по умолчанию, как это:
property name="isActive" default="1";
Но что, если вы хотите иметь динамически генерируемый по умолчанию, например, дату или UUID?
property name="uuid" default="#createUUID()#";
... выдает сообщение об ошибке - так какой же обходной путь для этого?
Это отлично работает для новых объектов, но перезаписывается тем, что загружено из базы данных (даже если это пустое значение). Однако, поскольку я создаю это приложение с нуля, без устаревших данных, я могу быть уверен, что каждая запись в базе данных пользователей будет создана с этим значением по умолчанию. (В коде выше, функция инициализации() должен «вернуть это;». Добавлено к концу) Спасибо, Себ – sebduggan
Если вы хотите, чтобы запустить этот код для нового объекта вы всегда можете проверить id объекта if (isNull (getId()) {} –
альтернативой было бы присвоить uuid @ preInsert – Henry