Potrei sbagliarmi, ma sembra che i dati restituiti da un callback ‘post’ contengano category_slug ma non category_id, mentre quelli restituiti da un callback ‘topic’ contengono category_id ma non category_slug.
Se è così (e non sto trascurando qualche configurazione), sarebbe utile che entrambi i callback standardizzassero l’uso di category_id o category_slug, o restituissero entrambi.
Sarebbe anche ottimo se entrambi i tipi includessero parent_category_id e parent_category_slug quando si proviene da un post o un argomento in una sottocategoria. Attualmente, entrambi forniscono category_id, il quale non indica se si tratta di una categoria o di una sottocategoria.
Esiste l’intenzione di aggiornare i webhook in modo che includano sempre sia category_id che category_slug, indipendentemente dal fatto che il webhook sia per un ‘post’ o per un ‘topic’?
Le informazioni attuali del callback ‘post’ sono subottimali perché non c’è un modo affidabile per determinare a quale categoria appartengono… poiché (se ho capito correttamente) category_slug non deve essere unico. Se hai diverse categorie, ciascuna con tre sottocategorie con gli stessi slug (perché hai bisogno che la navigazione delle sottocategorie appaia identica all’utente), non puoi capire in quale sottocategoria è stato creato il ‘post’ solo basandoti sullo slug.
Non sono uno sviluppatore Ruby, ma mi chiedo se ci sia un bug nella classe post_serializer:
def include_category_id?
@add_title
end
Non dovrebbe essere:
def include_category_id?
topic&.category_id.present?
end
Ho creato una PR per mostrare questa modifica. Potrebbe essere una follia, ma potrebbe aiutare a trovare la soluzione reale…