212 похожих чатов

Возникла такая задачка. Есть публикация с полем ресурсы (массив) внутри

ресурса лежат определенные поля. Нужно организовать partial update этого поля (изменения порядка, добавление, удаление, изменение значения полей ресурса). В голову пока лезет 2 варианта:
1. Бэк просто предоставляет интерфейс к изменению этого поля, фронт сам все просчитывает и отправляет каждый раз полный массив со всеми изменениями.
2. Или я делаю на каждое действие свой отдельный эндпоинт но в этом случае получается большое количество запросов в бд.
Что правильнее?

3 ответов

21 просмотр

Первый подход ИМХО более правильный. Юзер подтвердил действие данные ушли на бек. А при втором что делать, если фронт подергал эндпойнты, а пользователь передумал или коннект оборвался?

Murad-Akhundov Автор вопроса
Oleksij Kyslytsja
Первый подход ИМХО более правильный. Юзер подтверд...

Но тогда получается что логика переносится на фронт

мало инфы, не оч понятно насколько сложно потом будет разбираться как че сохранять, как валидировать, нужна ли история изменений/аудит, как потом это может все меняться и как это влияет на выбор. нет смысла делать много эндпоинтов, можно иметь просто один rpc эндпоинт и все. Но это не значит что у нас круд ui и оно тебе обязано все слать. Тут уже вопрос как логика на клиенте организована и как работа с данными происходит. даже такие там вещи как лайв апдейты, или там возможность сохранять драфты изменений и т.д. будут влиять

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта