Bug(バグ) #2773
完了Task(タスク) #3403: OpenPNE の既存のテストコードが正常に動作するように修正を行う
テンプレートを使用するアクティビティの表示時に、対応するテンプレートが activity_template.yml 内に存在しない場合が想定されていない
0%
説明
Overview (現象)¶
opCommunityTopicPlugin や opDiaryPlugin など、activity_template.yml を使用したアクティビティ投稿機能を持つプラグインで発生します。
これらのプラグインによって投稿されたアクティビティが残っている状態で、activity_template.yml を使用するプラグインを全て無効化すると Configuration "config/activity_template.yml" does not exist or is unreadable.
とエラーが出力されます。
再現する手順¶
- opCommunityTopicPlugin を OpenPNE3 に追加・使用可能にする
- pc_backend にて、
- opCommunityTopicPlugin 設定画面 (/pc_backend.php/opCommunityTopicPlugin) から「アクティビティ更新設定」を「使用する」に設定し、コミュニティトピック作成時にアクティビティが投稿される状態にする
- ガジェット設定画面 (/pc_backend.php/design/gadget) から、ホーム画面に「アクティビティ」ガジェットが表示される状態にする
- SNSにログインし、コミュニティのトピックを作成する
- トピック作成時に投稿されたアクティビティがホーム画面に表示される
- pc_backend のプラグイン設定 (/pc_backend.php/plugin/list) から opCommunityTopicPlugin 及び opDiaryPlugin を無効化する
- ホーム画面を再度表示すると500エラーが表示される
Apacheのエラーログには Configuration "config/activity_template.yml" does not exist or is unreadable.
と出力されます。
Causes (原因)¶
OpenPNE コア側に activity_template.yml が存在しない(opCommunityTopicPlugin および opDiaryPlugin 内には存在する)ことによるものです。
Way to fix (修正内容)¶
このエラーは lib/config/config に空の activity_template.yml を作成することで解決します。
なお、後から opCommunityTopicPlugin 等が無効化された場合にそのプラグインのテンプレートを必要としているアクティビティは空白として表示されます。
Youichi Kimura さんがほぼ13年前に更新
- 説明 を更新 (差分)
すみません、バンドルプラグインが完全にインストールされていない環境で手順を書いてしまったため上記の手順では再現しませんでした。
手順「5」のプラグイン設定で opDiaryPlugin も無効化して下さい。(手順に書き加えました)
Yuma Sakata さんがほぼ13年前に更新
- 3.6 で発生するか を No (いいえ) から Yes (はい) に変更
再現確認できました。
Environment (再現バージョン)¶
OpenPNE3.6.2
Way to repro (再現手順)¶
1. opCommunityTopicPlugin を OpenPNE3 に追加・使用可能にする2. pc_backend にて、
- opCommunityTopicPlugin 設定画面 (/pc_backend.php/opCommunityTopicPlugin) から「アクティビティ更新設定」を「使用する」に設定し、コミュニティトピック作成時にアクティビティが投稿される状態にする
- ガジェット設定画面 (/pc_backend.php/design/gadget) から、ホーム画面に「アクティビティ」ガジェットが表示される状態にする
3. SNSにログインし、コミュニティのトピックを作成する
4. トピック作成時に投稿されたアクティビティがホーム画面に表示される
5. pc_backend のプラグイン設定 (/pc_backend.php/plugin/list) から opCommunityTopicPlugin 及び opDiaryPlugin を無効化する
6. ホーム画面を再度表示すると500エラーが表示される
備考¶
opCommunityTopicPlugin 及び opDiaryPlugin を無効化したところ、再現確認できました。
3.4 系は opCommunityTopicPlugin 設定ページが存在しないため、再現確認できませんでした。
Youichi Kimura さんが約11年前に更新
- 説明 を更新 (差分)
- ステータス を New(新規) から Accepted(着手) に変更
- 担当者 を Youichi Kimura にセット
- 対象バージョン を OpenPNE 3.9.0-old にセット
- 親チケット を #3403 にセット
- 3.8 で発生するか を Yes (はい) にセット
Youichi Kimura さんが約11年前に更新
- ステータス を Accepted(着手) から Pending Review(レビュー待ち) に変更
- 進捗率 を 0 から 50 に変更
更新履歴 6864bf36d7df3b7acb25d6fc9a5c45de519140a9 で適用されました。
Shinichi Urabe さんが約11年前に更新
- ステータス を Pending Review(レビュー待ち) から Pending Testing(テスト待ち) に変更
- 進捗率 を 50 から 70 に変更
レビューOKです