Page MenuHomeSealhub

"attachments" przy single_reference
Closed, ResolvedPublic

Description

Problem:

Kolekcja A ma single_reference na kolekcję B. Pobieramy listę 100 dokumentów z kolekcji A. 80 z nich wskazuje na ten sam element kolekcji B. Ustawiamy format pola single_reference na expand. Wtedy ten sam zasób z kolekci B występuje w JSON-ie 80 razy, a to są cały czas te same dane.

Rozwiązanie:

Zamiast zwracać ten dokument kolekcji B w każdym polu każdego zasobu kolekcji A, można utworzyć w korzeniu zwracanego JSONa pole attachments i w nim umieścić po jednym razie każdy z zasobów, który znalazł się w polu kolekcji A

PS. Pomoże to też zapobiec cyklicznym expandom

Revisions and Commits

rS Sealious
Restricted Differential Revision

Event Timeline

kuba-orlik triaged this task as High priority.Jul 4 2018, 19:24

Implementacja pociągnie za sobą zmianę w odpowiedzi ze wszystkich endpointów dotyczących kolekcji, do tej pory była to po prostu tablica, a teraz będzie to obiekt postaci np. {attachments: {}, items: []}

Dodatkowo warto mieć na uwadze, że chcemy pozostawić sobie możliwość filtrowania czy sortowania po polach w attachmentach.

Słuszne obserwacje. Będzie trzeba trochę więcej żonglować z tym, co serwer umieści w odpowiedzi, ale drastycznie zmniejszy objętość responsów.

Prawdopodobnie dopiszemy helpery do obsługi odpowiedzi w Cosealiousie

kuba-orlik shifted this object from the Restricted Space space to the S5 Publiczna space.Jul 30 2018, 12:20
kuba-orlik changed the visibility from "All Users" to "Public (No Login Required)".
piotr-ptaszynski added a revision: Restricted Differential Revision.Aug 7 2018, 07:25
piotr-ptaszynski added a revision: Restricted Differential Revision.Aug 19 2018, 19:43
piotr-ptaszynski changed the status of subtask T1076: Przenieść fieldy z body do korzenia from Unknown Status to Unknown Status.Sep 27 2018, 06:19
piotr-ptaszynski changed the task status from Unknown Status to Resolved.Jun 21 2020, 18:23