トピック一覧プレビュー(レガシー)

サポート期間(当スレッドの OP で説明されている通り、月の最初の 5 日間)外での更新はお控えください。その場合、本番環境以外の環境でアップグレードをテストすることを強くお勧めします。

「いいね!」 3

とはいえ、今回はプラグインと TC の両方に対して修正を適用しました :).

TC: FIX: adopt new router service format · merefield/discourse-tc-topic-list-previews@7a2f539 · GitHub

プラグイン: FIX: adopt new format for accessing router service by merefield · Pull Request #160 · merefield/discourse-topic-previews-sidecar · GitHub

どちらも最新のテストパス版で動作するはずです。

「いいね!」 2

@merefield さん、この問題を修正していただきありがとうございます。ちょうど報告しようとしていたところでした。昨夜リビルドを行ったところ、サイト内のすべての投稿が表示されなくなりました。その後、非公式プラグインを無効にしたところ、TLP だけでなく他のプラグインも同様の問題に直面していることが分かりました。

これらのプラグインも同様の問題を抱えている可能性がありますので、ご確認いただけますと幸いです。これらのプラグインを無効にすることで、ようやく投稿が表示されるようになりました:

https://github.com/paviliondev/discourse-layouts

「いいね!」 1

現在はサポート期間外ですが、それらの主要メンテナーは、サポート期間が再び到来した際に、少なくとも確認いたします。

本番環境を頻繁に再構築する誘惑に屈しないでください。できるからといって、やるべきだということではありません :slight_smile:

「いいね!」 4

抵抗してみます。:innocent:

「いいね!」 2

どうしてもビルドをいじる必要がある場合は、ステージング環境で行ってください。そもそも、そのような環境を構築しているだけで本番環境のアップグレードに手を取られてしまうかもしれませんね。

「いいね!」 4

このプラグインには機能的な問題はなく、トピック一覧のサムネイルも正常に動作していることが確認できます。ただし、今日のログに以下のエラー(私のログではこれが唯一のエラー)が表示されたため、報告することにしました。これは「Solved」プラグインとの競合ではないかと考えています。両方のプラグインをインストールしている場合、このエラーを再現できます。トピックを作成して解決済みとしてマークしようとすると、500 エラーが発生する可能性があります。

image

ログ
plugins/discourse-topic-previews/plugin.rb:61:in `block (2 levels) in activate!'
lib/discourse_event.rb:14:in `block in trigger'
/usr/local/lib/ruby/2.6.0/set.rb:338:in `each_key'
/usr/local/lib/ruby/2.6.0/set.rb:338:in `each'
lib/discourse_event.rb:13:in `trigger'
plugins/discourse-solved/plugin.rb:160:in `block in accept_answer!'
lib/distributed_mutex.rb:33:in `block in synchronize'
lib/distributed_mutex.rb:29:in `synchronize'
lib/distributed_mutex.rb:29:in `synchronize'
lib/distributed_mutex.rb:14:in `synchronize'
plugins/discourse-solved/plugin.rb:81:in `accept_answer!'
plugins/discourse-solved/plugin.rb:222:in `accept'
actionpack (6.0.3.2) lib/action_controller/metal/basic_implicit_render.rb:6:in `send_action'
actionpack (6.0.3.2) lib/abstract_controller/base.rb:195:in `process_action'
actionpack (6.0.3.2) lib/action_controller/metal/rendering.rb:30:in `process_action'
actionpack (6.0.3.2) lib/abstract_controller/callbacks.rb:42:in `block in process_action'
activesupport (6.0.3.2) lib/active_support/callbacks.rb:112:in `block in run_callbacks'
app/controllers/application_controller.rb:340:in `block in with_resolved_locale'
i18n (1.8.5) lib/i18n.rb:313:in `with_locale'
app/controllers/application_controller.rb:340:in `with_resolved_locale'
activesupport (6.0.3.2) lib/active_support/callbacks.rb:121:in `block in run_callbacks'
activesupport (6.0.3.2) lib/active_support/callbacks.rb:139:in `run_callbacks'
actionpack (6.0.3.2) lib/abstract_controller/callbacks.rb:41:in `process_action'
actionpack (6.0.3.2) lib/action_controller/metal/rescue.rb:22:in `process_action'
actionpack (6.0.3.2) lib/action_controller/metal/instrumentation.rb:33:in `block in process_action'
activesupport (6.0.3.2) lib/active_support/notifications.rb:180:in `block in instrument'
activesupport (6.0.3.2) lib/active_support/notifications/instrumenter.rb:24:in `instrument'
activesupport (6.0.3.2) lib/active_support/notifications.rb:180:in `instrument'
actionpack (6.0.3.2) lib/action_controller/metal/instrumentation.rb:32:in `process_action'
actionpack (6.0.3.2) lib/action_controller/metal/params_wrapper.rb:245:in `process_action'
activerecord (6.0.3.2) lib/active_record/railties/controller_runtime.rb:27:in `process_action'
actionpack (6.0.3.2) lib/abstract_controller/base.rb:136:in `process'
actionview (6.0.3.2) lib/action_view/rendering.rb:39:in `process'
rack-mini-profiler (2.0.4) lib/mini_profiler/profiling_methods.rb:104:in `block in profile_method'
actionpack (6.0.3.2) lib/action_controller/metal.rb:190:in `dispatch'
actionpack (6.0.3.2) lib/action_controller/metal.rb:254:in `dispatch'
actionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:50:in `dispatch'
actionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:33:in `serve'
actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:49:in `block in serve'
actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:834:in `call'
railties (6.0.3.2) lib/rails/engine.rb:527:in `call'
railties (6.0.3.2) lib/rails/railtie.rb:190:in `public_send'
railties (6.0.3.2) lib/rails/railtie.rb:190:in `method_missing'
actionpack (6.0.3.2) lib/action_dispatch/routing/mapper.rb:19:in `block in <class:Constraints>'
actionpack (6.0.3.2) lib/action_dispatch/routing/mapper.rb:48:in `serve'
actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:49:in `block in serve'
actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:32:in `each'
actionpack (6.0.3.2) lib/action_dispatch/journey/router.rb:32:in `serve'
actionpack (6.0.3.2) lib/action_dispatch/routing/route_set.rb:834:in `call'
lib/middleware/omniauth_bypass_middleware.rb:68:in `call'
rack (2.2.3) lib/rack/tempfile_reaper.rb:15:in `call'
rack (2.2.3) lib/rack/conditional_get.rb:40:in `call'
rack (2.2.3) lib/rack/head.rb:12:in `call'
lib/content_security_policy/middleware.rb:12:in `call'
lib/middleware/anonymous_cache.rb:336:in `call'
rack (2.2.3) lib/rack/session/abstract/id.rb:266:in `context'
rack (2.2.3) lib/rack/session/abstract/id.rb:260:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/cookies.rb:648:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
activesupport (6.0.3.2) lib/active_support/callbacks.rb:101:in `run_callbacks'
actionpack (6.0.3.2) lib/action_dispatch/middleware/callbacks.rb:26:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/actionable_exceptions.rb:17:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/debug_exceptions.rb:32:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
logster (2.9.2) lib/logster/middleware/reporter.rb:43:in `call'
railties (6.0.3.2) lib/rails/rack/logger.rb:37:in `call_app'
railties (6.0.3.2) lib/rails/rack/logger.rb:28:in `call'
config/initializers/100-quiet_logger.rb:19:in `call'
config/initializers/100-silence_logger.rb:31:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/request_id.rb:27:in `call'
lib/middleware/enforce_hostname.rb:22:in `call'
rack (2.2.3) lib/rack/method_override.rb:24:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/executor.rb:14:in `call'
rack (2.2.3) lib/rack/sendfile.rb:110:in `call'
actionpack (6.0.3.2) lib/action_dispatch/middleware/host_authorization.rb:76:in `call'
rack-mini-profiler (2.0.4) lib/mini_profiler/profiler.rb:321:in `call'
message_bus (3.3.1) lib/message_bus/rack/middleware.rb:61:in `call'
lib/middleware/request_tracker.rb:176:in `call'
railties (6.0.3.2) lib/rails/engine.rb:527:in `call'
railties (6.0.3.2) lib/rails/railtie.rb:190:in `public_send'
railties (6.0.3.2) lib/rails/railtie.rb:190:in `method_missing'
rack (2.2.3) lib/rack/urlmap.rb:74:in `block in call'
rack (2.2.3) lib/rack/urlmap.rb:58:in `each'
rack (2.2.3) lib/rack/urlmap.rb:58:in `call'
unicorn (5.6.0) lib/unicorn/http_server.rb:632:in `process_client'
unicorn (5.6.0) lib/unicorn/http_server.rb:728:in `worker_loop'
unicorn (5.6.0) lib/unicorn/http_server.rb:548:in `spawn_missing_workers'
unicorn (5.6.0) lib/unicorn/http_server.rb:144:in `start'
unicorn (5.6.0) bin/unicorn:128:in `<top (required)>'
vendor/bundle/ruby/2.6.0/bin/unicorn:23:in `load'
vendor/bundle/ruby/2.6.0/bin/unicorn:23:in `<main>'
「いいね!」 2

再現手順を教えてください。この問題は、私が運用している2つのサイトでは発生しておらず、そのようなログエントリも確認されていません。

「いいね!」 1

当サイトで再現させるには:

  1. トピックリストのプレビューを有効にします。
  2. 「解決済み」が有効なトピックに移動します:
  3. 管理者またはスタッフとして、誰かの投稿に移動し、それを解決として選択します。
「いいね!」 2

ありがとうございます。サポート週間に確認いたします。

「いいね!」 1

@merefield トピック一覧プレビューのテーマコンポーネントと、いいねとブックマーク用のサイドカープラグインの組み合わせが素晴らしいです。

https://github.com/merefield/discourse-topic-list-previews-theme/

トピック一覧プレビューリストで「返信」をクリックした際にバグが見つかったようです。

理想的な動作:

トピック一覧プレビューでトピックの「返信」をクリックすると、日付を選択できるようになり、日付を選んだ後、そのトピックの詳細ページに移動します。

私の問題:

トピック一覧プレビューでトピックの「返信」をクリックすると、日付選択画面が表示されますが、日付を選ぶ前にトピック一覧プレビューページが更新されてしまい、トピックの詳細ページに移動しません。

ご都合のよろしい時に、ご確認いただけますと幸いです。

ありがとうございます。

「いいね!」 2

今月はサポート業務に多くの時間を費やしました。これは緊急性が低いため、より落ち着いた時期に延期します。ご理解いただきありがとうございます。私の記憶では、これは古いバグで、修正が優先されなかったもののようです。PR はいつでも歓迎します。

「いいね!」 3

以下のテーマコンポーネントとプラグインをインストールしました。これらは非常にうまく連携しています。少しお手伝いが必要です。

https://github.com/merefield/discourse-topic-list-previews-theme 
git clone https://github.com/merefield/discourse-topic-previews.git -b "theme_sidecar" 

抜粋の下にある「いいね」と「ブックマーク」アイコンを揃えるための CSS のコツをご教示ください。 アイコンの位置が画像のサイズによってずれてしまいます。

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

「いいね!」 2

例を前にすると、特にフォーラム全体でサムネイルを使用していない場合は、私の方が理解しやすいです。ただし、これを行う最善の方法は、topic-details クラスを使用して幅を制限することだと思います。このクラスの幅を、例えば width: calc(100% - 000px);(000 はサムネイル列に設定された幅)のような値に制限し、サムネイルと同じサイズの margin-left を追加してください。それで十分かもしれません。

「いいね!」 1

サイトアドレスをPMで送っていただけますか?後で確認します。

「いいね!」 1

お試しください:

.topic-details {
    overflow: hidden;
}
「いいね!」 3

素晴らしい、動作しました。本当にありがとうございます :pray:

「いいね!」 2

このプラグインをテーマ Aでのみ有効にし、テーマ Bでは無効にすることは可能ですか?

「いいね!」 2

はい、TC を使用すれば可能です。

「いいね!」 2

ありがとうございます。無知で恐縮ですが、TCとは何でしょうか?テーマコンポーネントのことですか?

「いいね!」 2