Структуры.AddField

Материал из Hivext Wiki

Перейти к: навигация, поиск

Метод AddField

Общая информация

Параметр Значение
Описание Добавление нового поля в тип данных.
Адрес метода http://api.hivext.ru/1.0/data/base/{протокол}/addfield
Кодирование urlEncoding
Метод сервиса Структуры

Параметры

Имя параметра Тип Описание
Входящие параметры
appid string [*] Идентификатор приложения.
session string [*] Идентификатор пользователя.
type string [*] Имя типа.
field string [*] Имя добавляемого поля (id - зарезервировано).
fieldType string

Тип добавляемого поля. Типы данных:

Название типа Описание типа
Базовые типы данных
short
integer
long
float
double
char
string Текстовый тип данных, по умолчанию максимум 255 символов.
string(N) Текстовый тип данных, может содержать максимум N символов, где N любое целое число от 1 до 10240.
text Текстовый тип данных, может содержать максимум 65000 символов.
mtext Текстовый тип данных, может содержать максимум 16000000 символов.

Дата и время
По умолчанию свойства данных типов содержат время создания объекта по Гринвичу.

date YYYY-MM-DD
time HH:MM:SS, HHH:MM:SS
datetime YYYY-MM-DD HH:MM:SS
millisec Время в миллисекундах, которое прошло с 1 января 1970 года. Также известно как unix time.

Специальные типы данных
Поля данных типов заполняются платформой автоматически при создании/обновлении объекта. Поля можно использовать в запросах по критериям. Запись в них запрещена.

user Тип данных пользователь. Поля данного типа содержат идентификатор пользователя (uid) создавшего/обновившего объект (для гостей uid = 0).
signature Тип данных подпись устройства. Поля данного типа содержат подпись устройства создавшего/обновившего объект.

Комплексные типы данных

Созданные типы данных можно использовать для создания комплексных типов данных. Например
DefineType(appid, session, "SimpleType", { PropA : "string" });
AddField(appid, session, "ComplexType", "Simple", "SimpleType");

В результате получится следующий тип данных:

ComplexType : {
    Simple : {
        PropA : "string"
    }
}

Метод CreateObject(..., "ComplexType") кроме создания объекта типа ComplexType создаст объект типа SimpleType в другой таблице. В свойстве Simple будет содержаться id созданного объекта типа SimpleType.

Методы выборки GetObject, GetObjects, GetObjectsByCriteria, GetProperty для поля Simple вернут индекс (id) объекта. Если в требуется вернуть сам объект, а не него индекс, в параметре eager (данный параметр содержат все методы выборки) указывается имя свойства для которого вернется объект.

Возвращаемые параметры
result int

Коды ошибок

1003 Тип данных с указанным именем не существует
1005 Добавляемое поле уже существует
1008 Имя поля зарезервировано
1012 Превышена квота на количество полей
error string Описание ошибки, если она произошла.