Задать вопрос
@vi0

Бэкенд или фронтенд должен объединять таблицы по FK?

В бэкенде сервиса есть две таблицы БД связанные отношением один ко многим.
table1
- PK: int
- name: string

table2
- PK: int
- name: string
- FK: table1

В сервисе есть API позволяющие получить данные этих таблиц на фронтенд.

Если требуется вывести на фронтенде данные обеих таблиц в объединенном виде по FK, то какие могут быть причине не делать новый API который даст эти данные в нужном виде:
t1.name, t2.name

Т.е. какие могут быть причины, чтобы фронтенд получал данные таблиц из существующих API и сам делал объединение таблиц?
  • Вопрос задан
  • 105 просмотров
Подписаться 1 Простой Комментировать
Ответ пользователя Aetae К ответам на вопрос (3)
Aetae
@Aetae
Тлен
Если работа идёт всегда со всеми данными - отдельный бэк api не нужен.
Если работа идёт с какой-то определённой выборкой(как бывает в 99% случаев), то запрос в любом случае нужен, потому что, чтобы получить соответствующие выборке значения из соседней таблицы, клиенту потребуется посылать уже массив id, что, внезапно, увеличит накладные расходы бэка, по сравнению с простеньким join'ом потребным для спец-api.
Ответ написан
Комментировать