Vorrei sapere come dovrei aggiornare le relazioni molti-a-molti nella mia API.
La mia app ha companies
che può avere molti tools
e technologies
. La relazione viene memorizzata nelle tabelle di unione companies_technologies
e companies_tools
.
Il frontend ha un modulo per modificare la società. Desidero che gli utenti inviino un unico modulo per aggiornare le (1) informazioni sulla società , (2) gli strumenti e (3) tecnologie .
La mia soluzione è di inviare PUT
di richiesta al server con i seguenti dati:
{
...company attributes...,
tool_ids: [1,2,3,4],
technology_ids: [11,22,33,44]
}
Quindi nel server, troverei tutti gli strumenti che appartengono all'azienda, ottengo i loro id, trova la differenza tra questi id e tool_ids
e inserisce / cancella nella tabella companies_tools
. Lo stesso per technology_ids
.
Ma un simile approccio sembra piuttosto goffo. Esiste un approccio alternativo o come posso migliorare la mia soluzione?