「解決済み」ロック状態を理解する方法


図で示されたソリューションには、ボタンの横にチェックボックスがなく、選択を解除できません。

状況は以下の通りです。これは管理権限を持っている自己ホスト型サーバーです。モデレーター権限を持つテストアカウント(ログや経験を記録するために使用しています)によってトピックが作成されました。私はそのトピック内で自分の返信の1つをソリューションとしてマークしました。今日、既存の記録を破壊せずに古いトピックのソリューションを置き換えたいと思いました。そこで、それらのトピックで新しい返信投稿を作成し、古いソリューションの選択を解除し、新しいものを採用しました。これは自分で作成したトピックでは問題なく機能しました。しかし、他のアカウントによって作成されたこのトピックに関しては、古いソリューションの選択を解除できないことがわかりました。

  • 当初、権限の問題ではないかと疑い、管理者権限を持つ別のテストアカウントを使用して、返信を投稿したアカウントのすべての特殊な権限を剥奪しました。その結果、やはり選択を解除できませんでした。

  • その後、ソリューションとしてマークされた返信投稿の作成者がトピックの作成者ではないことが原因ではないかと疑いました。そこで、そのモデレーターアカウントに切り替えましたが、結果は同じで、やはり選択を解除できませんでした。

  • 後になって、トピック作成者と返信投稿の作成者を同じユーザーにするために、元の投稿の所有権の変更を試みました。しかし、上記の図に示されているように、ロックされた状態が表示されました。

誰か同様の状況に遭遇した人はいませんか?皆さんの経験談を聞かせていただけると幸いです。:slightly_smiling_face:

:memo: 注記

モデレーターアカウントに切り替えた場合を除き、他のすべてのケースで、古いソリューションの選択を解除しようとしたユーザーは管理者権限を持っていました。

奇妙なことに、同様のプロセスを他のトピックで行っても、このシナリオを再現できませんでした。:innocent:
このロック効果は、イベント操作によって直接トリガーされたのではなく、何らかのタイミング処理を待つ必要もあるようです。

「いいね!」 1

トピックはロックされていますか?私の記憶が正しければ、それが要因の一つかもしれません。

これは、開いている場合でもこのままであり、最初にソリューションを選択してからトピックを閉じることでは再現できません。:thinking:

バグの可能性があります。ページを調べて、ソリューションを変更しようとしたときにコンソールタブを確認すると、エラーは発生しますか?

いいえ、コンソールには、この通常のコンテンツ以外に、関連する情報はありません。

app.js:331 ℹ️ Discourse v2026.3.0-latest — https://github.com/discourse/discourse/commits/5907059890 — Ember v6.10.1
start-discourse-ed0c531d.js:4 [Intervention]Images loaded lazily and replaced with placeholders. Load events are deferred. See https://go.microsoft.com/fwlink/?linkid=2048113

解決策の変更については、解決策がロックされており、その場所はクリック可能なボタンではないため、実際には何も操作を実行する方法がないため、試すことはできません。

「いいね!」 1