Je souhaite afficher des données provenant d’API tierces sous le titre du sujet pour chacun d’eux sur la page de liste des sujets. Quelqu’un peut-il me guider sur la façon d’afficher les données en utilisant les meilleures pratiques ?
Comme je ne connais pas grand-chose à la personnalisation dans Discourse. Tout conseil serait d’une grande aide et apprécié !
Si vous utilisez le composant de thème des points de terminaison de plugin, il vous montrera quel point de terminaison utiliser pour créer votre personnalisation.
cela ressemble à ce que vous voulez, le point de terminaison after-topic-list-item.
Liens vers d'autres sujets de développement de composants de thème
Merci @Lilly. En fait, je veux afficher des données d’une API tierce pour chaque sujet et pour cela, je cherche un moyen d’appeler l’API tierce lorsque les données se chargent sur la page de liste.
Donc, lorsque la page se charge, je devrais appeler l’API, puis je veux rendre les données. Pour le moment, je rassemble toutes les données de la liste et j’appelle l’API tierce, quelles que soient les données qui arrivent, je les ajoute simplement au DOM. Mais je veux récupérer les données lors du chargement paresseux de la page de liste des sujets.
C’est généralement une mauvaise idée. Si l’hôte qui sert l’API est lent, votre forum sera lent. Si l’hôte qui sert l’API est en panne, votre forum sera en panne. Si votre forum est débordé, l’API sera débordée.
Vous devriez charger les données de manière asynchrone, par exemple dans un job sidekiq, et les stocker avec le sujet.
Je sais que c’est une mauvaise idée, mais je suis nouveau sur Discourse et je n’en savais pas grand-chose. Maintenant, je vais chercher le job Sidekiq comme vous le suggérez.
J’ai une autre question. Le job Sidekiq pourra-t-il déterminer s’il y a de nouvelles données arrivant pour la page de liste des sujets ? ou dois-je faire quelque chose de différent pour faire savoir au job que la page de liste charge plus de données ?