Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない
- waves > テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/13 14:52
- goichi > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/13 22:32
- waves > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/14 14:10
- » n1215 > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/14 14:51
- n1215 > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/14 15:00
- waves > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/14 17:57
- waves > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/14 18:45
- n1215 > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/14 19:16
- waves > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/15 9:52
n1215 > Re: テーマ【CMS DESIGN】のお問い合わせフォームが表示されない @ 2014/10/14 14:51 |
---|
横やり失礼します。
公式サイトにプラグインのルーティングについて説明した内容があれば参考にと貼ろうかと思ってたんですが……書いてなさそうですね。 下記にプラグインのルーティングの概要をご説明します。 ●プラグインのルーティング baserCMS(CakePHP)のルーティングでは、 あらかじめルーターに複数登録されたルート(要はURLの規則)の中から ルーターがリクエストされたURLにマッチするものを順番に探して どのコントローラとアクションを利用するかを決定します。 CakePHPのプラグインのルーティングはデフォルトでは下記規則に従います。
例)
●プラグインのルートのエイリアス(別URL) デフォルトのプラグインのルートのURLのままだとかなり冗長になりますね。 baserCMSでは短くわかりやすいURLを利用できるエイリアスとなるルート(以下、便宜的に短縮名ルートと呼称します)を追加しています。 plugin_contentsテーブルに、プラグインが管理するコンテンツに対応する名前(以下、短縮登録名)を登録しておくと
というエイリアスが利用できます。 例) Mailプラグインでは仕様として短縮登録名=メールフォームアカウント名になります。 初期状態ではMailプラグインのコンテンツIDが1のメールフォームが"contact"という短縮登録名で登録されています。 これにより先ほどのCakePHPデフォルトのプラグインのURLに加えて、
というURLでもフォームを表示することができます。 正常にこのルートにマッチした場合、MailプラグインのMailControllerのindexアクションが利用されます。 ●症状と原因について ContactContorollerが見当たらないという表示が出たということは、本来のプラグインの短縮名ルートにURLがマッチせず、 後続の/{コントローラー名}/{アクション名}型のルートにマッチしているはずです。 ※ContactControllerなるコントローラーは存在しない状態が正常ですのでご安心を。 方針としてはプラグインの短縮名ルートにマッチしない原因を探ればいいということになります。 ●データベースの中身の確認 goichiさんご指摘の方法で解決しないとなると、 まずはデータベースのplugin_contentsテーブルの中身と整合性が取れているかを確認していただくのが良いかと思います。 データベースはSQLiteとのことなので下記を参考にplugin_contentsテーブルの中身をのぞいてみてください。 http://forum.basercms.net/modules/newbb/viewtopic.php?viewmode=thread&topic_id=1648&forum=5&post_id=6201#6201 content_id:1 plugin:'Mail' name:'contact' となっているレコード(行)が存在しますか? Twitter: @n_1215 |