Как я могу удалить указанный элемент c из документа в faunadb? - PullRequest
0 голосов
/ 07 апреля 2020

Например:

Как я могу изменить это -

{
"Name": "UserName",
"Ref": [
  {"id1": "ajbdkfb323"},
  {"id2": "fguqge7681"},
  {"id3": "chv76aavbb"}
  ],
"day": "Wednesday"
}

на это -

{
"Name": "UserName",
"Ref": [
  {"id1": "ajbdkfb323"},
  {"id2": "fguqge7681"}
  ],
"day" : "Wednesday"
}

или если я просто хочу удалить весь объект "Ref", как я могу это сделать?

1 Ответ

1 голос
/ 07 апреля 2020

предполагается, что вы создали свой документ как

> Create(Ref(Collection("cls"), "1002"), {data: {Name: "UserName", Ref: [{id: "ajbdkfb323"}, {id: "fguqge7681"}, {id: "chv76aavbb"}], day: "Wednesday"}})
{
  ref: Ref(Collection("cls"), "1002"),
  ts: 1586273769713000,
  data: {
    Name: 'UserName',
    Ref: [
      { id: 'ajbdkfb323' },
      { id: 'fguqge7681' },
      { id: 'chv76aavbb' }
    ],
    day: 'Wednesday'
  }
}

, вы можете обновить поле Ref как

> Let({
    ref: Ref(Collection("cls"), "1002"),

    dataRef: Select(["data", "Ref"], Get(Var("ref"))),

    dataRefFiltered: Filter(
      Var("dataRef"),
      Lambda("obj", Not(Equals("chv76aavbb", Select("id", Var("obj")))))
    )
  },
  Update(
    Var("ref"),
    { data: { Ref: Var("dataRefFiltered") } }
  )
)

{
  ref: Ref(Collection("cls"), "1002"),
  ts: 1586274149050000,
  data: {
    Name: 'UserName',
    Ref: [ { id: 'ajbdkfb323' }, { id: 'fguqge7681' } ],
    day: 'Wednesday'
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...