Avendo sperimentato il database ereditato, ciò che @Falco afferma in questo post è molto evidente.
Non viene sfruttata quasi per nulla la potenza di Postgres. Quasi tutta la logica viene gestita nell’ambiente Ruby.
La mia conclusione è quindi che questo non è affatto di grande aiuto di per sé.
Un altro approccio consiste nell’utilizzare la funzionalità di schema remoto di Hasura, ma per farlo Discourse avrebbe bisogno di un’API GraphQL, non REST… quindi anche questo, di per sé, non è molto utile.
Tuttavia, esiste la possibilità di incapsulare API REST preesistenti in un livello GraphQL. Questo sembra più promettente rispetto a quanto sopra (o meglio, in combinazione con quanto sopra). In questo articolo, fanno riferimento a un repository con codice boilerplate per iniziare.