Как сделать так, чтобы ребенок выглядел как родственник в sanity.io?

У меня сформирована структура документов:

{
  name: 'item',
  title: 'item',
  type: 'document',
    fields: [
    {
      name: 'category',
      type: 'reference',
      title: 'category',
      to: { type: 'settingCategory' },
      validation: Rule => Rule.required(),
    },
  ],
}

Я не хочу менять структуру стола. Но мне нужно показать category в пользовательском интерфейсе студии, как "относительная папка". Является ли это возможным?

--UPD

в @sanity/desk-tool/structure-builder теперь у меня есть такая структура:

export default () =>
  SB.list()
    .id('root')
    .title('root')
    .items([
      SB.documentTypeListItem('item'), //all items are here, and they have a category by field in the each other
      ...
          ])
          ...
        ),
        ...
    ])

Но мне нужно показать категорию как родитель. И мне нужно как-то связать мою ценность категории с SB.list(), Категория, это независимый документ с полями, у меня уже есть.

--UPD2

Я имею в виду, у меня теперь есть один родственник .documentTypeListItem(name:item) и есть элементы с полем tags, Каждое поле тега имеет одно значение. Теперь у меня есть проблема, мне нужно отделить это item в соответствии с этим значением поля тега в documentTypeListItem(name:tagOne), documentTypeListItem(name:tagTwo) и т. д. в моей приборной панели.

--UPD3

Если переезд невозможен. В качестве альтернативы можно будет показать значок для элемента в соответствии с выбранной категорией. Как то так, но это не работает

name: 'item',
  title: 'item',
  type: 'document',
  fields: [
    {
      name: 'categoryCheck',
      type: 'string',
      title: 'category',
      options:  {
        list:[
          {
            name: 'one',
            title: 'One',
            type: 'string',
            icon: 'FaIconOne',
          },
          {
            name: 'two',
            title: 'two',
            type: 'string',
            icon: 'FaIconTwo',
          },
        ],
        layout: 'select'
      },
    },
    ],
  preview: {
    select: {
      title: 'title.name',
      media: 'categoryCheck.icon'
    }
  }
}

0 ответов

Другие вопросы по тегам