Инструменты пользователя

Инструменты сайта


ru:airlay:crud

Различия

Показаны различия между двумя версиями страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
ru:airlay:crud [2026/06/08 17:04]
Калинин Александр Игоревич
ru:airlay:crud [2026/06/08 17:21] (текущий)
Калинин Александр Игоревич [Обновление списка объектов]
Строка 19: Строка 19:
 Во первых вам понадобиться идентификатор поиска, его можно получить в администрировании просто кликнув на идентификатор возле поиска. Его указываем в поле searchId = 62a884ed984cd32eaa3255fb. Поле type = user статичное, оно означает, что используем пользовательский поиск. objectType = Main тоже статическое поле. В поле queries = можно указать значение, по которому можно выполнить поиск объектов в БД.  Во первых вам понадобиться идентификатор поиска, его можно получить в администрировании просто кликнув на идентификатор возле поиска. Его указываем в поле searchId = 62a884ed984cd32eaa3255fb. Поле type = user статичное, оно означает, что используем пользовательский поиск. objectType = Main тоже статическое поле. В поле queries = можно указать значение, по которому можно выполнить поиск объектов в БД. 
  
-''filter = ( ( {{voltage}}=0.4|{{voltage}}="0.4" ) )'' в фильтр через И и ИЛИ можно указать различные поля для фильтрации. ''sortField = _id'' атрибут отвечает за сортировку данных, мы можем по ключевому полю отсортировать объекты сюда указывается поле. sortOrder = desc атрибут отвечает за порядок сортировки может быть asc и desc. ''skip=0 и limit=10'' позволяет выгружать данные порционно, рекомендуемый объём это 1000 объектов. В целом система успешно выгружает и большие пакеты, но есть ограничение в оперативной памяти в 2GIG при котором система вернёт ошибку, если не получилось получить данные. Когда система вернёт ошибку 400, то объекты закончились или их нет по заданным фильтрам.+''filter = ( ( { { voltage } } = 0.4 | { { voltage } } = "0.4" ) )'' в фильтр через И и ИЛИ можно указать различные поля для фильтрации. ''sortField = _id'' атрибут отвечает за сортировку данных, мы можем по ключевому полю отсортировать объекты сюда указывается поле. sortOrder = desc атрибут отвечает за порядок сортировки может быть asc и desc. ''skip=0 и limit=10'' позволяет выгружать данные порционно, рекомендуемый объём это 1000 объектов. В целом система успешно выгружает и большие пакеты, но есть ограничение в оперативной памяти в 2GIG при котором система вернёт ошибку, если не получилось получить данные. Когда система вернёт ошибку 400, то объекты закончились или их нет по заданным фильтрам
 + 
 +==== Добавление списка объектов ==== 
 + 
 +Чтобы добавить список объектов необходимо отправить POST запрос. 
 + 
 +https://airlay.ru/api/v3/dataset/editor 
 + 
 +В POST запрос в FORM DATA нужно передать два поля 
 +Идентификатор набора данных dataSetId 62a811a3e143c06e854cda72 
 +Коммит на изменение commit  
 +<code javascript> 
 +
 + { 
 +  "type":"createRelation", 
 +  "id":-1, 
 +  "geometryType":"Point", 
 +  "members":[], 
 +  "properties": 
 +   { 
 +    "Date":null, 
 +    "updateDate":1780913201 
 +   } 
 + },  
 + { 
 +  "type":"createRelation", 
 +  "id":-2, 
 +  "geometryType":"Point", 
 +  "members":[], 
 +  "properties": 
 +  { 
 +   "Date":null, 
 +   "updateDate":1780913201 
 +  } 
 + } 
 +
 +</code> 
 + 
 +В коммит нужно передать массив изменений. Первое поле тип с операцией создать relation. Второе поле создать идентификатор для объекта указываются поля -1, -2, -3. В теории можно указать сразу связи между объектами. Параметр -1 и меньше означает, что система создаст идентификатор и проставит объекту и укажет для него связи из коммита. Второе поле geometryType указываем тип объекта. members массив геометрических ссылок на объекты. "properties" поля для объекта туда можно сложить атрибуты. В примере выше мы создали 2 точки с 2 атрибутами и уникальными идентификаторами. 
 + 
 +==== Обновление списка объектов ==== 
 + 
 +Чтобы обновить список объектов необходимо отправить POST запрос. 
 + 
 +https://airlay.ru/api/v3/dataset/editor 
 + 
 +В POST запрос в FORM DATA нужно передать два поля 
 +Идентификатор набора данных dataSetId 62a811a3e143c06e854cda72 
 +Коммит на изменение commit  
 +<code javascript> 
 +
 + { 
 +  "type":"updateRelationProperties", 
 +  "id":1, 
 +  "geometryType":"Point", 
 +  "members":[], 
 +  "properties": 
 +   { 
 +    "Date":null, 
 +    "updateDate":1780913201, 
 +    "newField":"new" 
 +   } 
 + },  
 + { 
 +  "type":"createRelation", 
 +  "id":2, 
 +  "geometryType":"Point", 
 +  "members":[], 
 +  "properties": 
 +  { 
 +   "Date":null, 
 +   "updateDate":1780913201, 
 +   "newField":"new" 
 +  } 
 + } 
 +
 +</code> 
 + 
 +В коммит нужно передать массив изменений. Первое поле тип с операцией создать updateRelationProperties. Мы после создания получаем список идентификаторов или через получения списка объектов мы меняем данные объекты. В текущем примере мы меняем новые точки с идентификаторами 1 и 2 и добавляем им новое поле с новым атрибутом в поле "properties" 
 + 
 +==== Удалить списка объектов ==== 
 + 
 +Чтобы удалить список объектов необходимо отправить POST запрос. 
 + 
 +https://airlay.ru/api/v3/dataset/delete 
 + 
 +В POST запрос в FORM DATA нужно передать два поля 
 +Идентификатор набора данных dataSetId 62a811a3e143c06e854cda72 
 +Список уникальных идентификаторов ids ["1", "2"
 +В примере выше мы удаляем 2 точки с идентификаторами 1 и 2.
ru/airlay/crud.1780913044.txt.gz · Последнее изменение: 2026/06/08 17:04 — Калинин Александр Игоревич