【環境情報】
・baserCMSのバージョン:5.1.0?デモサイト
・レンタルサーバー名:公式デモサイト AWS
・使用テーマ:BcThemeSample カスタム
・PHPスキル(自己評価): C
BaserCMS5.1の環境でカスタムコンテンツを設定し、データの登録後、[プレビュー]を
行ったところエラーとなった、下記の公式のデモサイトでも同じエラーが出ている
公式デモサイト
https://trial.basercms.net/baser/admin/bc-custom-content/custom_entries/edit/1/1
[プレビュー]を行うと下記のURLで別タブに表示されます
https://trial.basercms.net/baser/admin/baser-core/preview/view?url=https://trial.basercms.net/recruit/view/プログラマー&preview=default
プレビュー表示は、 An Internal Error Has Occurred.
エラー: アドレス ‘/recruit/view/%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9E%E3%83%BC?preview=default’ に送信されたリクエストは無効です。
最後の「default」を「publish」に変更すると正常にプレビューができる
https://trial.basercms.net/baser/admin/baser-core/preview/view?url=https://trial.basercms.net/recruit/view/プログラマー&preview=publish
末尾が、「publish」は固定ページのプレビュー、ブログとカスタムコンテンツが「default」だった、
対処療法として、末尾「publish」にするにはどうしたらいいでしょうか、ご教示いただけませんでしょうか?
根本的には、対応していただきたいです
よろしくお願いします
akasky
2024 年 9 月 19 日午前 9:20
2
@IconDesign
こんにちは。
確認したところ、ファイルアップロードのバリデーションまわりでエラーが発生して
正常にプレビューできないようです。
初期サンプルデータの求人情報だと「メインビジュアル」が上記に該当すると思います。
ひとまずIssueを上げました。
opened 09:17AM - 19 Sep 24 UTC
## 概要
フォーラムにて挙げられた内容になります。
https://forum.basercms.net/t/topic/1381
baserCM… S version: 5.1.0
## エラー内容
pathinfo(): Argument #1 ($path) must be of type string, Laminas\Diactoros\UploadedFile given
ROOT/plugins/baser-core/src/Model/Validation/BcValidation.php at line 278 [(edit)](phpstorm://open?file=/var/www/html/plugins/baser-core/src/Model/Validation/BcValidation.php&line=278)
## 原因について
CustomContentFrontServiceの「setupPreviewForView」でEntityを生成する際、
リクエスト内のデータをそのままセットしているため、ファイル項目がUploadedFileの状態で渡り、
結果的にバリデーション処理側で例外が発生しているようです。
現時点での対処としては、タイプ「ファイル」のフィールドを含まなければ
おそらく正常にプレビューできるかと思います。
根本的な解決についてはIssueへの回答等、お待ちくださいませ。