新しいメッセージが下ではなく上に表示されることはできますか?

みなさん、こんにちは。

オンラインコミュニティを新しいフォーラムソフトウェアに移行しています。15 年分の投稿(55,000 件)があります。旧フォーラムは IP Board で、すべての投稿が 1 つの長いストリームとしてまとめられています。個別のトピックを作る必要はありません。

Discourse は以下の機能をサポートしていますか?

  1. 新しいメッセージを下ではなく上に表示する。
  2. ユーザーの最終閲覧位置を保持する。

つまり、ユーザーが Discourse を訪れた際に、最後の「未読」位置を保持し、最後に読んだ場所から表示することは可能でしょうか。その後、ユーザーは新しいメッセージを読むために上にスクロールします。

Discourse のインライン返信機能は気に入っていますが、新しいトピックを作成する必要はありません。すべて 1 つのトピック内で完結させます。

よろしくお願いいたします。

「いいね!」 1

一つのトピックに55,000件の投稿がありますか?:thinking:
コメントのような投稿で、順序が逆になっています。
ただし、「最初の」投稿がトピックのメイン投稿です。ここでそれを変更できないかどうかはわかりません。

質問2はDiscourseで解決済みです。システムはユーザーがどこまで読んだかを「記憶」しており、ユーザーが戻ってきたときに、最後に読んだメッセージの場所に移動します。

「いいね!」 3

ご返信ありがとうございます。「コメント投稿」とは何でしょうか?Discourse のサンプルフォーラムを見てトピックに入ると、新しい投稿はすべて下部に表示されます。

当フォーラムでは、「新規投稿」をクリックすると新しい投稿が上部に追加されます。「返信」も同様に新しい投稿を作成しますが、投稿の上部に「User4532 への返信」というテキストが追加されます。すべてが長いスレッドとしてストリーミングされ、新しい投稿は上部に表示されます。

Discourse の標準のように新しい投稿を下部に表示する方法もありますが、フォーラムにアクセスするたびに 55,000 件の投稿をスクロールしたくありません。新しい投稿を上部に表示することは可能でしょうか?

必要ありません。前回止まった場所を覚えてくれます。また、トピック内で Shift+L を押せば、最初の未読投稿にジャンプできます。

「いいね!」 4

誰もこの問題の本質に触れていないと思います。The MEGATOPIC: public good, or public menace? の内容を理解する限り、Discourse が単一のトピックで 55,000 件の返信を処理し、かつ(パフォーマンスの観点から)問題なく動作することなど、あり得ません。

「いいね!」 4

主な質問への答えは「いいえ」です。新しい返信は常に一番下に追加されます。ただし、ログインユーザーの閲覧位置は常に保存されます。

「いいね!」 3

なぜ、多くの投稿、特に Discourse が他のフォーラムソフトウェアと比べて特別なのでしょうか?

例えば、phpBB や vBulletin では、一度に表示される投稿数が限られているため、非常にシンプルです。

例えば、ドイツのフォーラムでは、このスレッドに20万件の投稿があります:

技術的な観点、つまりデータの保存という点では、1投稿ずつのスレッドが20万件ある場合と、1つのスレッドに20万件の投稿がある場合とで、大きな違いはないはずです。SQL データベースでは、単に特定の投稿がどのスレッドに属するかを示す ID があれば十分です。したがって、両方のシナリオは非常に似ています。

では、唯一の「問題」は次のことでしょうか?
→ Discourse は一度に多くの投稿を読み込んでしまうようです。最新の投稿が下部にあるため、その上部にあるすべての投稿を読み込む必要があるからです。これにより、特にブラウザでのレンダリング(ユーザー側のメモリ超過)において問題を引き起こす可能性があります。

「いいね!」 1

標準動作: 新しい返信は常に下に表示されます

ええと、これが可能だと言っているわけではありません。私はフロントエンドプログラミングの専門家ではありませんが、JavaScript を使って DOM を操作すれば、表示されるオブジェクトの順序を変更できる(?)と信じています。

テーマコンポーネントを作成できるかどうかを断言できるほどの知識や経験はありません。この種の開発を行う「達人」が無料で作成できるのか、あるいは(可能であれば)Marketplace でリクエストして入手する必要があるのか、私にはわかりません。

もちろん、20 件以上の返信がある場合、これは非現実的です。フロントエンドで順序を逆転させるには、まずすべての返信を読み込む必要があり、その後 JavaScript がオブジェクトを操作して順序を逆転させるため、トピックの返信数が増えるほど表示が大幅に遅延します。

情報を表示することと、ユーザーが返信した瞬間にリアルタイムでその返信を他の返信の「上」にネストして表示すること(標準的なフォーラムの動作では下に表示されます)は別問題です。それが実現可能かどうかはわかりません。:thinking:

「いいね!」 1

コミュニティのニーズは、チャットプログラムの方がはるかに適切に満たされるでしょう。メッセージが上部に表示されるものを私は知りませんが、これらは「すべての議論が同じストリームにある」というパターンを、フォーラムよりもはるかにうまく扱います。

検討すべき選択肢:Zulip、Mattermost、Discord、Slack。

「いいね!」 3

Can discourse display topic replies in reverse order? に賛成票を投じました