補足templatesディレクトリとはsrcディレクトリでは、ウェブアプリケーションの中心となる、MVCモデルのうちV(View)の設定を行います。MVCモデルの解説については、下記外部サイト様をご参照ください。【解説】MVCモデルとは?メリット・デメリットMVCモデルとは「Model」「View」「Controller」の3つに分けてコードを管理するシステム開発においての設...system-kaihatu.comsrcディレクトリと同様に、WEB開発時にもっともよく触るディレクトリです。初期ディレクトリ構造このうちいくつかを抜粋して解説します。elementディレクトリを開いてみると、下記のようにflashというディレクトリが入っています。公式によると、このディレクトリは下記のように使うとのこと。具体的に言うと、フォーム送信時の「送信成功しました」のような、一時的に表示するメッセージ等に使うようです。emailその名の通り、メール送付時に用いるテンプレートが入っています。Errorこちらもその名の通り、エラー画面の表示ですね。ErrorsControllerと組み合わせて、404や403など、エラー画面ごとに表示を切り替えるのも可能なようです。layoutこちらは公式によれば下記のように解説されています。『レイアウトにはビューをくるむ表示コードが入ります。レイアウトに配置されるべきです。』htmlで言うと、head要素に記載するスニペット情報や、headerやfooterなどの各ページ共通の要素に関する記載を行います。非常に重要な内容ですので、コードを見てみましょう。cake.cssを指定している。//urlが.../users/sampleであれば/templates/users/sample.phpを読み込む。</footer></body></html>先述の通り、head要素やheader・footer要素等の、各ページ共通の要素に関する記載がされていることがわかります。指定しなければ、各ページの共通部分については、このファイルに記載されている内容が反映されます。PagesDBと連携しないページ(静的ページ)のテンプレートファイルが設置されます。初期状態では、Controllerに対応する(DBと連携した)ページのテンプレートは作られていません。Bakeコマンドで作ってみましょう。これまでの記事でも使っていた、DBのusersテーブルのテンプレートを作ります。usersこれで、以下のようなディレクトリができます。templates直下に、Usersディレクトリができています。実際にページを表示するCakePHPのルーティング前回の記事で、UsersControllerは既に作成していますので、これで実際にページを表示することができます。CakePHPでは、デフォルトではコントローラ名と関数名によってURLが決まります。https://”ドメイン”/コントローラ名/関数名がデフォルトパスになります。この関数名と同名のtemplateファイルが、描画のために読み込まれます。テキストだけではイメージしにくいので、ファイルの内容を確認してみましょう。ControllerとTemplateUsersControllerUsersControllerに下記のような、index()という関数があります。}この関数と連携するTemplateはtemplates/users/index.phpです。DBからusersのデータ(以下の画像)を全て取得して、該当テンプレートに渡しています。</div></div>Controllerから取得したusersのデータをforeach文ですべて表示しています。(22~33行目)ページのURLはhttps://”ドメイン”/”コントローラ名”/”関数名(テンプレートファイル名)”なので、このページは以下のurlで表示できます。https://”ドメイン”/users/index表示は以下の画像のようになります。userの一覧が表示されています。ちなみに、urlのパスの最後が/indexの場合には省略することが可能です。先述のページは、以下のurlでも表示できます。上記のような、デフォルトルーティングでページを表示できるのはもちろんですが、config/routes.phpを編集することで、ルーティングを任意することも可能です。詳細は、以下の記事をご参照ください。今回はCakePHP4でのviewの一部分を共通化する方法について解説します。PHPでPDFを生成するためのライブラリです。前回、下記の記事でCakePHP5のCakePHP4との変更点をまとめました。コメントをキャンセルメールアドレスが公開されることはありません。※サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。上に表示された文字を入力してください。ホームCakePHPmulemuleと申します。IT業界で働いて約5年になります。ウェブ製作・ツール系アプリ製作を主に行っております。exports?exports.SyntaxHighlighter=SyntaxHighlighter:nullタイトルとURLをコピーしました。