HeapObject - запись (строка) heap-таблицы
Запись heap-таблицы представляет собой совокупность
- пользовательских полей, перечисленных разработчиком при объявлении таблицы с помощью
Heap.Table, - и системных полей.
При чтении записей с помощью методов HeapTableRepo пользовательские и системные поля
объединяются в один объект, который в настоящей документации называется heap-объект или HeapObject.
Системные поля
Ниже перечислены системные поля, которые есть у всех heap-объектов. Названия этих полей зарезервированы и не могут
быть использованы для полей таблицы верхнего уровня, объявляемых разработчиком.
-
id:
string
Глобально-уникальный идентификатор записи. В большинстве случаев генерируется автоматически с помощью внутреннего
алгоритма на основе библиотеки nanoid. Является глобально-уникальным
в пространстве всех записей всех таблиц. -
createdAt:
Date
время создания записи. Автоматически устанавливается во вермя операции create или createOrUpdateBy и никогда не изменяется. -
updatedAt:
Date
время последнего изменения записи. Изначально равно значению createdAt и автоматически
обновляется при каждой операции update,
updateMaybe или
createOrUpdateBy. -
createdBy: RefLink
<User> | null
Cсылка на пользователя, в контексте авторизованного запроса которого создалась запись. Если в контексте не было
пользователя, то значение пустое. -
updatedBy: RefLink
<User> | null
Cсылка на пользователя, в контексте авторизованного запроса которого произошло последнее изменение записи. Если в контексте не было пользователя, то значение пустое. -
heapType:
string
Соответствует свойству type таблицы, к которой принадлежит heap-объект.Для продвинутых. Это поле не следует использовать без острой надобности.
Остальные ключи heap-объекта - поля, объявленные разработчиком heap-таблицы, значения которых являются
десериализованным runtime-представлением, соответствующим каждому типу поля.
Вспомогательные типы для полей heap-объекта
Поля некоторых сложных типов представлены в heap-объекте не в виде сырых простых javascript-типов
(как, например, string или number), а в виде объектов с методами (экземпляров классов) для удобной работы
с этими полями. В этом разделе вы найдёте подробное описание таких классов:
- RefLink - для полей-ссылок на записи в других таблицах, объявленных с помощью
Heap.RefLink и Heap.UserRefLink. - GenericLink - для полей-ссылок на записи в других таблицах,
объявленных с помощью Heap.GenericLink. - Money - для полей, хранящих денежные суммы,
объявленных с помощью Heap.Money. - StorageFile - для полей, хранящих хеш-ссылку на файл
во встроенном хранилище Чатиума, объявленных с помощью Heap.StorageFile. - StorageImageFile - для полей, хранящих хеш-ссылку на файлы-изображения
во встроенном хранилище Чатиума, объявленных с помощью Heap.StorageImageFile. - StorageVideoFile - для полей, хранящих хеш-ссылку на видео-файлы
во встроенном хранилище Чатиума, объявленных с помощью Heap.StorageVideoFile. - StorageAudioFile - для полей, хранящих хеш-ссылку на аудио-файлы
во встроенном хранилище Чатиума, объявленных с помощью Heap.StorageAudioFile.
Все перечисленные классы, кроме
RefLinkиGenericLinkможно использовать и отдельно от heap-таблицы
для работы с соответствующими типами данных.
