Выбрать _id последнего созданного документа данного типа в Sanity - PullRequest
0 голосов
/ 03 мая 2018

В Sanity для данного типа документа с именем message как я могу получить _id самого нового документа сообщения?

1 Ответ

0 голосов
/ 03 мая 2018

Запрос

На самом деле это можно сделать одним запросом в GROQ (язык запросов Sanity) :

*[_type == 'message'] | order(_createdAt desc) [0] ._id

Объяснение запроса

Этот запрос состоит из пяти частей.

  1. *[_type == 'message']: выбрать все документы типа 'message'.
  2. |: передать сообщения (чтобы мы могли выполнить остальные операции)
  3. order(_createdAt desc): упорядочить сообщения от самых новых до самых старых (_createdAt устанавливается Sanity автоматически при создании документа)
  4. [0]: выберите первое сообщение из списка (которое также самое новое)
  5. ._id: выберите _id самого последнего сообщения

Чтобы получить другое свойство, несколько свойств или весь объект сообщения, замените последнюю часть запроса.

...