一般ユーザー向けレビューの表示方法

こんにちは。

レビューを一般ユーザーにも表示する方法を教えていただけますか?

プラグインのカスタマイズに取り組んでいます。

基本的に、管理者/モデレーターだけでなく、一般ユーザーにもサイドバーにレビューリンクを表示したいと考えています。管理者/モデレーターの場合は、これらのユーザーに表示されているため、何もする必要はありません。しかし、一般ユーザーにも表示したいと考えており、一般ユーザーは保留中のステータスのトピックのみを表示できる必要があります。

コードを調べて、レビューを表示する責任があるファイルを見つけました。
review-index.jsreview-index.hbs です。ルートファイルでは、この行 がデータを取得していますが、ステータスが保留中のトピックを取得できるようにクエリをどのように変更すればよいかわかりません。

以下の2点について、どなたかご指導いただけますでしょうか。

  1. 一般ユーザーのためにサイドバーにレビューリンクを表示するにはどうすればよいですか?
  2. 保留中のステータスのトピックのみを取得できるように、クエリを変更するにはどうすればよいですか?

一般ユーザーはそれらのリンクを使用できませんよね?

最初のステップは、それらのリンクをシリアライザーに追加することだと思います。

「いいね!」 1

メッセージありがとうございます @pfaffman

はい、一般ユーザーはレビューリンクを見ることができませんが、保留中のトピックをリストしたい場合に、一般ユーザーにレビューリンクを表示したいと考えています。

シリアライザーにレビューリンクを追加する方法の例を教えていただけますか?

Search add-to-serializer をここか GitHub - discourse/all-the-plugins で検索してください

「いいね!」 2

こんにちは。add_to_serializer を調べようとしましたが、コードが Ruby で書かれており、あまり理解できませんでした。
add_to_serializer(:site, ...) のようなものを使用する必要があることはわかりましたが、2 番目のパラメータに使用すべきメソッドがわかりません。

サイドバーにレビューリンクを表示するにはどうすればよいか、教えていただけますか?

リンクを表示したいだけであれば、サイドバーに追加できます。ただし、通常のユーザーはレビューページを表示できないため、ページを機能させるにはプラグインを作成する必要があります。

「いいね!」 1

プラグインを開発していますが、サイドバーにリンクを追加する方法がわかりません。

現時点では、レビューリンクに関するこのブログで回避策を見つけました。将来必要になったときに誰でも使用できるように、ここに貼り付けます。望んでいたものではありませんが、少なくともコミュニティセクションにリンクを追加できました。メインのコミュニティセクションの「すべて見る」ボタンのすぐ上に表示したいです。

一般ユーザーがレビューページを表示できるようにするには、どうすればよいか教えていただけますか?

一般ユーザープロファイルでレビューリンクをクリックすると、API応答でアクセス拒否のエラーが発生します。これは、一般ユーザーがレビューページを表示する権限を持っていないためだと思われます。

それが最初に申し上げたことです。ユーザーはモデレーターではないため、レビューページを見ることができません。

権限をオーバーライドする必要があります。これは、Rubyに気後れしている場合、特に複雑な変更です。

何をするべきかかなり分かっている人にとっては1〜3時間、RubyやDiscourse開発を知らない人にとっては10〜20時間かかる仕事だと思います。

「いいね!」 2