Bellissima funzionalità! Tuttavia
sono più curioso riguardo all’ordinamento Top / New / Old che non al layout nidificato in sé. Ho implementato controlli di ordinamento simili nella mia app mobile (un client Discourse) e mi piacerebbe supportarli nativamente invece di usare il mio metodo attuale, anche se funziona, come mostrerò di seguito.
Guardando il codice sorgente, vedo che GET /n/{slug}/{topic_id}.json?sort={top|new|old}&page={n} restituisce l’argomento in vista nidificata ordinato secondo la modalità scelta. La mia domanda: c’è interesse a esporre solo l’ordinamento tramite l’endpoint esistente /t/{slug}/{topic_id}.json (ad esempio ?sort=top) in modo che anche i client in vista piatta possano trarne beneficio?
Se l’ordinamento fosse disponibile nella vista piatta, i client di terze parti potrebbero optare per questa funzionalità senza adottare il modello di rendering in vista nidificata.
Sono consapevole che la struttura dei dati della vista nidificata (post radice + figli lazy) è ciò che rende fattibile l’ordinamento lato server, e che la vista piatta utilizza una paginazione diversa. Se un ordinamento completo in vista piatta non è realistico per motivi di prestazioni, anche un opzionale ?sort=top&limit=N sarebbe sufficiente per abilitare una vista “evidenziati”.

