こんにちは @Discourse、
トピックリストページで、各トピックのタイトルの下にサードパーティAPIからのデータをレンダリングしたいと考えています。ベストプラクティスを使用してデータをレンダリングする方法を教えていただけますか?
Discourseのカスタマイズについてはあまり詳しくありません。どのようなアドバイスでも大変助かりますし、感謝いたします!
こんにちは @Discourse、
トピックリストページで、各トピックのタイトルの下にサードパーティAPIからのデータをレンダリングしたいと考えています。ベストプラクティスを使用してデータをレンダリングする方法を教えていただけますか?
Discourseのカスタマイズについてはあまり詳しくありません。どのようなアドバイスでも大変助かりますし、感謝いたします!
どなたかこの問題の解決にご協力いただけませんか?
プラグインのアウトレットテーマコンポーネントを使用すると、カスタマイズを構築するためにどのコンポーネントを使用すればよいかがわかります。
after-topic-list-item コンポーネントが必要なようです。
Developing Discourse Themes & Theme Components
Theme Developer Quick Reference Guide
Beginner's guide to using Discourse Themes
Developing Discourse Plugins - Part 1 - Create a basic plugin
このカスタマイズの構築に関する開発ヘルプをお探しの場合は、Marketplace カテゴリをご利用ください。 ![]()
@Lillyさん、ありがとうございます。実際には、トピックごとにサードパーティAPIからデータを表示したいと考えており、リストページでデータがロードされるときにサードパーティAPIを呼び出す方法を探しています。
ページがロードされたときにAPIを呼び出し、その後データをレンダリングしたいと思います。現在、リストデータをすべて収集し、サードパーティAPIを呼び出して、取得したデータをDOMに追加しています。しかし、トピックリストページの遅延読み込みでデータを取得したいのです。
これは一般的に悪い考えです。APIを提供するホストが遅い場合、フォーラムも遅くなります。APIを提供するホストがダウンしている場合、フォーラムもダウンします。フォーラムが過負荷になった場合、APIも過負荷になります。
Sidekiqジョブなどで非同期にデータを読み込み、トピックと一緒に保存する必要があります。
メッセージありがとうございます、@RGJ!
悪い考えだとわかっていますが、Discourseは初めてだったので、あまりよく知りませんでした。ご提案いただいたように、Sidekiqジョブを探してみます。
もう一つ質問があります。Sidekiqジョブは、トピックリストページに新しいデータが入ってくるかどうかを判断できるのでしょうか?それとも、ジョブにリストページがさらにデータを読み込むことを知らせるために、何か別のことをする必要があるのでしょうか?
ありがとうございます!
Sidekiq ジョブは、ページリストがさらにデータを読み込むかどうかを知ることはありません。独立しています。
Sidekiq ジョブで API を使用してデータを定期的に読み込み、トピックと共に保存します。
その後、トピックリストが読み込まれるときに、保存されたデータが取得されます。キャッシュメカニズムと考えてください。
了解しました。
@RGJさん、本当にありがとうございます!
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.