Discourse 解決済み

ホームページの「トップ」「ホット」「最新」などの横に「未解決」を追加するにはどうすればよいですか?

サイト設定で設定されたものに加えてカスタムリンクを追加するには、Custom Top Navigation Links コンポーネントを使用できます。トピックリストを未解決のトピックでフィルタリングするには、solved=no を追加できます。たとえば、Discourse Meta - The Official Support Forum for Discourse

「いいね!」 6

同じ互換性のないプラグインエラーが上記で言及されているのと同じように発生していますが、私たちは公式リリースを使用しています。

[詳細=“ログ”]

********************************************************
*** お待ちください。次のステップには時間がかかる場合があります ***
********************************************************
サイクリングユニコーン、メモリ解放のため
ユニコーンのPIDを再起動中:551
ユニコーンのリロードを待っています。
ユニコーンのリロードを待っています。
ユニコーンのリロードを待っています。
ユニコーンのリロードを待っています。
ユニコーンのリロードを待っています。
ユニコーンのリロードを待っています。
ユニコーンのリロードを待っています。
メモリ解放のために3つのユニコーンのワーカーを停止中
メモリを回収するためにジョブキューを停止中、マスタープロセスIDは3004191
$ cd /var/www/discourse/plugins/docker_manager  git fetch --tags --prune-tags --prune --force
$ cd /var/www/discourse/plugins/docker_manager  git reset --hard HEAD@{upstream}
HEADは現在930ec25で、デベロップメント用です
$ bundle install --retry 3 --jobs 4
バンドル完了! 146のGemfile依存関係、189のgemがインストールされました。
'test'と'development'グループのGemはインストールされませんでした。
バンドルされたgemは`./vendor/bundle`にインストールされます。
直接依存している3つのgemが資金援助を求めています。
  詳細は`bundle fund`を実行してください
$ if [ -f yarn.lock ]; then yarn install; else CI=1 pnpm install; fi
スコープ:すべての17のワークスペースプロジェクト
ロックファイルは最新の状態で、解決ステップはスキップされました
すでに最新です

```完了まで3.2秒
$ LOAD_PLUGINS=0 bundle exec rake plugin:pull_compatible_all
互換性のあるdiscourse-calendarバージョンを確認中: 8d09cf8503b78f4c72b47a7319c0f4b9ad0247e7
HEADは今、8d09cf8にあります DEV: update regions (#717)
互換性のあるdiscourse-reactionsバージョンを確認中: f87583d9054421869ba0de16c24ad15e32bbebe7
HEADは今、f87583dにあります DEV: Add system spec to check core features are working fine (#361)
互換性のあるdiscourse-solvedバージョンを確認中: 4f0234f5be3aaa77db277e0f224cd9750d2713cd
HEADは今、4f0234fにあります DEV: Add system spec to check core features are working fine (#357)
discourse-spoiler-alertは既に最新の互換性のあるバージョンです
docker_managerは既に最新の互換性のあるバージョンです
$ SKIP_POST_DEPLOYMENT_MIGRATIONS=1 bundle exec rake multisite:migrate
	81: /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/bundleの25行目で'main'を呼び出し
	80: /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/bundleの25行目でロード
	79: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/exe/bundleの20行目で'top (required)'を呼び出し
	78: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/friendly_errors.rbの117行目で with_friendly_errors
	77: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/exe/bundleの28行目で'top (required)'のブロック
	76: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rbの29行目でstart
	75: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/base.rbの584行目でstart
	74: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rbの35行目でdispatch
	73: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor.rbの538行目でdispatch
	72: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/invocation.rbの127行目でinvoke_command
	71: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/vendor/thor/lib/thor/command.rbの28行目でrun
	70: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli.rbの452行目でexec
	69: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rbの23行目でrun
	68: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rbの59行目でkernel_load
	67: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/bundler-2.6.4/lib/bundler/cli/exec.rbの59行目でload
	66: /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/rakeの25行目で'<top (required)>'を呼び出し
	65: /var/www/discourse/vendor/bundle/ruby/3.3.0/bin/rakeの25行目でload
	64: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/exe/rakeの27行目で'<top (required)>'を呼び出し
	63: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rbの80行目でrun
	62: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rbの214行目でstandard_exception_handling
	61: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rbの83行目でブロックを実行
	60: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rbの132行目でtop_level
	59: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rbの147行目でrun_with_threads
	58: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rbの138行目でtop_levelのブロック内
	57: /var/www/discourse/vendor/bundle/ruby/3.3.0/gems/rake-13.2.1/lib/rake/application.rbの138行目でeachメソッドの呼び出し
	...
「いいね!」 3

参考までに、Solvedプラグインをインストールしており、本日中にUIからアップデートしましたが、問題なく完了しました。:+1:


投稿する前に確認すべきでした… :slight_smile: その間にSolvedの新しいコミットが1つ追加されたようです。コマンドラインで再構築して、すべて問題なく完了することを確認します。

ETA: @Frully 再構築(Solvedを含む)は成功しました :partying_face:

「いいね!」 2

ジャムが言ったことに追加します。私も解決済みで問題はありません。

これが初めてSolovedをインストールする場合は、あなたのGitHubのアドレスが正しいことを確認してください。

安定版または推奨されたテスト通過版を実行しているかどうかも共有してもらえると助かります。

また、app.ymlのプラグインセクションの一部を投稿してもらえると役立つかもしれません。

「いいね!」 2

ご両方とも確認してくれてありがとうございます。これが更新されたので、プラグインを再び有効にするのがより安心です。テストする時間ができたらお知らせし、結果を記録します。

「いいね!」 3

この問題はまだ解決していません(他の誰も報告していないので、私たちだけの問題なのか疑問に思っていますが)。

もう少し詳しく調べたところ、「topic-statuses」CSSクラスに padding-toppadding-bottom を15px追加すると、この問題が回避できることがわかりました。プラグインのメンテナーが、より恒久的な方法で修正してくれることを願っています。

「いいね!」 3

これは Discourse Tooltips に関連していると思います。あなたのサイトの未解決のボックスだけでなく、ピンや南京錠も同様です。

他にもいくつか報告があると思います。

「いいね!」 5

Discourseを更新したため、解決済みウェブフックが反転しています。

トピックを解決すると、ウェブフックは次のように送信されます:

    "can_accept_answer": true,
    "can_unaccept_answer": false,
    "accepted_answer": false,
    "topic_accepted_answer": null

そして、回答を解除すると、その逆になります。

:partying_face: このプラグインは、Bundling more popular plugins with Discourse core の一部として、Discourse コアにバンドルされるようになりました。セルフホストでこのプラグインを使用している場合は、次回のアップグレード前に app.yml から削除する必要があります。

「いいね!」 3

Discourseの最新バージョンでエラーが発生しました。

アプリの再構築(Discourse)を行うには、これを無効にする必要があります。

コアに含まれるようになりました

「いいね!」 3

ホーム > カテゴリ内の投稿が解決済みトピックを未解決トピックとして表示する

他の設定は必要ですか?

「いいね!」 1

Discourse の検索エリアの 高度なフィルター に、未解決のみを表示するエントリを追加することは可能ですか?

/filterin:solved または in:unsolved を使用できます。

「いいね!」 3

Solved のトリガー可能な「first_accepted_solution」をオートメーション作成時に使用できると理解しています。このトリガーを持つオートメーションは、トピックが解決されるたびに一度だけ実行されるのでしょうか、それともユーザーからの最初の承認済みソリューションであり、トピックではないのでしょうか?質問がおかしいかもしれませんが、すみません。

「最初の解決策」は、ユーザーの投稿がトピックの解決策として初めて選択されたときにトリガーされます。


たとえば、ユーザーが初めて誰かを助けてくれたときに、そのことに感謝するために使用できます。

こんにちは、@Moin さん

ご説明ありがとうございます。よく理解できました。

追加の質問です。「accepted-solution」トリガーはありますか、それとも「first-accepted-solution」のみですか?

理由:トピックが解決済み(投稿が解決策としてマークされた)になるたびに投稿を作成するカスタム自動化を作成したいと考えています。

「first-accepted-solution」を試しましたが、一度しか機能しませんでした。現在わかるとおり、これは予想される動作です。何か推奨事項やアイデアはありますか?

投稿をどうしたいのか、なぜ必要なのかが分からないと、的確な提案は難しいです。\n単に、投稿が解決済みとしてマークされたことを知りたいだけですか?\n\nそれなら、データエクスプローラーのクエリと「データエクスプローラーの結果を持つトピックに投稿をスケジュールする」スクリプトを使用できます。例えば、過去10分間の解決済み投稿を10分ごとに返すクエリを実行できます。もっと頻繁に実行することもできますが、サーバーにどれだけ負荷がかかるかは不明です。しかし、1分ごとに実行したとしても、必ずしも解決ごとに投稿が得られるとは限りません。おそらく、1分以内に2つのトピックが解決されるでしょう。さらに、生成される投稿は限定的なカスタマイズしかできません。(もちろん、他のテキストと同様に、使用されるテキストはカスタマイズできますが、このスクリプトで自動化によって変更される投稿すべてに対して行う必要があることを念頭に置いてください。したがって、あまり個別にしたい場合は、実際には機能しません。)\n\nその自動化によって作成された投稿の簡単な例\n

\n\nテーブルの内容はクエリによって異なります。クエリを拡張して、トピックへのリンクや解決策を表示することも可能です。ここでは、機能が一般的にどのように機能するかを示すために、シンプルにしました。\n\n[details=“使用したクエリ”]\nsql\nSELECT\n dst.created_at AS solution_accepted_at,\n dst.topic_id,\n dst.answer_post_id,\n dst.accepter_user_id\nFROM discourse_solved_solved_topics dst\nWHERE dst.created_at >= NOW() - INTERVAL '10 minutes'\nORDER BY dst.created_at DESC\n\n[/details]

「いいね!」 1

こんにちは、@Moin さん

返信ありがとうございます :slight_smile:

素晴らしいです。テストして動作させることができました。返信のおかげです。

さらに、まだ私が求めていたものではありません。
以前の質問で明確でなかった場合は申し訳ありません。

私がやろうとしていることは、トピックが解決されるたびに(システムユーザーから)投稿を作成する自動化を作成することです。このトピックでは、新しく生成された投稿にアンケートが含まれます(アンケートはDiscourse SurveysのMarkdownになります)。