Tentativo di mostrare argomenti in una voce di menu personalizzata

Per imparare e applicare diversi concetti di discorso, sto sviluppando un plugin che visualizzerà tutti gli argomenti caldi (Hot Topics). Non ho ancora deciso i criteri per definire un argomento caldo, ma ecco i problemi che sto affrontando.

Ho anche descritto il mio processo di pensiero insieme al problema, e preferirei una soluzione basata sul processo di pensiero piuttosto che sulla soluzione pratica, in modo da aiutarmi a ragionare in modo chiaro e generale per risolvere molti altri problemi.

Ho creato una nuova voce di menu utilizzando api.addNavigationBarItem.
Ho anche creato un percorso personalizzato chiamato /hot-topics sia nel frontend che nel backend.
Attualmente, sto visualizzando un semplice titolo h3 sul percorso /hot-topics.

  1. Il mio primo compito è che, una volta cliccato l’elemento di navigazione, la barra di navigazione deve rimanere visibile e la scheda “Hot Topics” deve essere evidenziata.
    Penso che questo sia possibile con il componente {{navigation-bar}}, ma credo di dover restituire gli elementi di navigazione nel metodo model dell’oggetto route, in modo che vengano passati al template.
    Ho restituito un array hardcoded dal metodo model, ma senza successo.

  2. Il mio secondo compito è recuperare i cosiddetti Hot Topics e visualizzarli nella scheda “Hot Topics”.
    Per farlo, sto utilizzando il componente {{categories-topic-list}}. Ho difficoltà a capire come passare i dati a questo componente per visualizzare gli argomenti necessari.

Vi chiedo gentilmente di suggerire alcune idee su come procedere. Inoltre, qual sarebbe il vostro processo di pensiero mentre cercate di risolvere questo problema?

Grazie per aver provato a imparare Discourse!

Capisco che sia un’esperienza di apprendimento, ma ho subito una domanda: qual è la differenza tra “Hot” e visitare /top per vedere ciò che consideriamo i post migliori? Puoi filtrare per settimana o anche per giorno, se preferisci. Questo dovrebbe essere il nostro “Hot”.

Potresti valutare di aggiungere la tua rotta come parte delle rotte discovery., come facciamo per latest, new, top, ecc. Queste rotte renderizzano già automaticamente la barra di navigazione. Ti suggerisco di esaminare il codice di Discourse per vedere come vengono create le altre rotte. Troverai esempi su come recuperare i dati per le loro liste di argomenti.

Ho capito che devo riutilizzare le cose invece di ricrearle dopo aver lavorato su questo esercizio per un po’ di tempo. Ho seguito questo corso per approfondire i concetti di Ember.

Con questo e con l’idea che hai condiviso sulle rotte discovery., mi immergerò nel codice di Discourse per capire chiaramente come Discourse recupera i dati per quelle rotte e li passa al componente.

Grazie mille per il tuo tempo @eviltrout.