Weiß jemand, ob es irgendwo einen Leitfaden oder ein Beispiel dafür gibt?
Nehmen wir zum Beispiel an, ich verwende eine Theme-Komponente, um eine Seitenleiste zu erstellen: Wie kann ich in dieser Seitenleiste/Theme-Komponente die 20 neuesten öffentlich sichtbaren Themen auflisten (oder falls es einfacher ist, aus Kategorien, die ich in der Abfrage aufliste)?
Es gibt ein paar Möglichkeiten, dies zu tun. Die einfachste ist die Verwendung eines Ajax-Aufrufs an den Endpunkt der Rails-API, der die Daten liefert, die Sie anzeigen möchten. Wenn Sie die neuesten 20 Themen haben möchten, können Sie /latest.json ausprobieren.
Die Herausforderung besteht darin, dass Sie, wenn Sie Informationen aus mehreren Endpunkten kombinieren müssen, auf das Abschließen mehrerer Aufrufe warten müssen, was die Leistung im Theme-Komponente erheblich verlangsamen kann.
Gibt es eine einfache Möglichkeit, die Feeds/Daten von Discourse einfach wiederzuverwenden? (Damit sie auch die Einstellungen des jeweiligen Benutzers berücksichtigen.)
Zum Beispiel könnten wir in einer Seitenleiste Folgendes anzeigen:
Glaubst du, das wäre mehr oder weniger dasselbe wie die Datenbank mit den Abfragen zu belasten, die diese Endpunkte ohnehin ausführen? (Oder würde es deutlich mehr Ressourcen verbrauchen, da es so sein könnte, als müssten fünf zusätzliche Seiten geladen werden – eine für jeden Endpunkt?)
Wie auch immer, ich würde gerne damit experimentieren: Gibt es Anleitungen oder Tutorials, die zeigen, wie man Daten von einem Endpunkt in eine Theme-Komponente lädt? (Oder wäre es besser/effizienter, stattdessen ein Plugin zu erstellen?)
*Ich weiß zwar, wie man eine Theme-Komponente und ein „Dummy-Plugin
Diese Anleitung zeigt, wie man dies mit einem bestimmten Tag umsetzt, aber Sie können diesen Ansatz eigentlich mit jedem beliebigen Endpunkt replizieren.