Expressフォームのカスタマイズ
Expressフォームをカスタマイズしようと思い、本家サイトのドキュメント
http://documentation.concrete5.org/developers/express/express-forms-controllers/form-theming
http://documentation.concrete5.org/developers/express/express-forms-controllers/advanced-express-controller-customization
あたりを順々に作り、エラーから推測して必要と思われるクラスをuseに追加して、なんとか入力画面のカスタマイズまで進みました。
次に一度、本格的なカスタマイズの前に通常のExpressフォームが動くか確認したところ、送信ボタンを押したあとに
Exception Occurred: /var/www/html/aaa.com/concrete/vendor/illuminate/container/Container.php:734 Class ●●●\Express\Controller\EntityManager does not exist (-1)
このようなエラーが出ます(管理画面のログより)。
進行中に出たエラーとは種類が異なるのと、ドキュメントにはEntityManagerなるクラスを作る工程はなかったようなので、
このクラスを作ればよいのか、もしくは、他に何か足りないものがあるのか、何をすればよいかわからず、ここに投稿することにしました。
初めての投稿のため、足りないことがあるかもしれませんが、参考資料、concrete内の参考になるソースコードなど、
アドバイスいただけると幸いです。
MVCについては詳しくありませんが、なんとかおっかけてるレベルです。
/////// 環境 ///////
# concrete5 Version
Core Version - 8.3.1
Version Installed - 8.3.1
Database Version - 20171218000000
# concrete5 Packages
●●●というpackageを今回のドキュメントに従って作成し、インストール済
# Server Software
nginx
# PHP Version
7.0
サーバーはAWSのEC2 Amazon Linuxです。
Re: Re: Expressフォームのカスタマイズ
もう一度、管理画面の同時刻のレポートのログを確認しましたが、メッセージ欄には下記のもので全文です。
Exception Occurred: /var/www/html/aaa.com/concrete/vendor/illuminate/container/Container.php:734 Class ●●●\Express\Controller\EntityManager does not exist (-1)
Re: Expressフォームのカスタマイズ
Re: Expressフォームのカスタマイズ
これはどこをどう見ると良いのでしょうか?
(左が処理の順で、右上が処理箇所、右下が設定値やパラメータ?)
説明が大変かもしれませんので、参考になるサイトなどがあれば、
教えていただけると幸いです。
Re: Re: Expressフォームのカスタマイズ
配置したパッケージがどうもおかしい気がしたので、パッケージを一度アンインストールし、全部なしにしてから、再度配置してインストールしなおしました。
デバッグモードで見ていると、インストールの段階でエラーが発生していたようです。
そのときのCOPYを添付します。
Re: Expressフォームのカスタマイズ
Re: Re: Expressフォームのカスタマイズ
パッケージコントローラのご指摘の行には、
http://documentation.concrete5.org/developers/packages/directory-icon-controller
のドキュメントの内容をそのまま利用したので、下記コードをコメントアウトしたところ、
⇒ BlockType::installBlockType('aaa', $pkg);
パッケージのインストール時にエラーは発生しなくなりました。
※ パッケージコントローラーのinstallには、$pkg = parent::install();のみ残っている状態です。
そして、再度、expressフォームで送信を試してみたところ、一番最初の状態のエラーが返ってきました。
再びCOPYを添付します。
検索で調べると、LaravelとかPSR-4とかに関連しているようで、パスの書き方がどこかおかしいのかなと思って調べています・・・。
Re: Expressフォームのカスタマイズ
正確なクラス名を調べるには、こちらがおすすめです
http://documentation.concrete5.org/api/8.3.2/
takuro hishikawa
Re: Expressフォームのカスタマイズ