懋(ぼう)の技術研鑚帳

自分の情報技術の勉強をまとめていくブログ

ドットインストールでCakephp勉強する際の注意点と補足(XAMPP環境)

どうも、懋です。

 

今日は、ちょうどクリスマスということで、ケーキ!

ケーキということでCakephpについて書いていこうと思います。

 

まず、Cakephpとは何ぞや?という話ですが、

CakephpとはPHPの代表的なWebフレームワークのひとつです。

 

また、フレームワークとは何ぞやですが、

色んな言い方がされていますが、簡単にいえば

よく使う共通の機能を同じ形で簡単にコーディングできるように設計されているシステム

くらいのイメージのものかなと思います。

 

Cakephpは、nanapiなど大手のサイトの開発でも扱われていて、日本でも取り扱っている人が多く、勉強資源も多いことがメリットとして挙げられます。

 

さて、そんなCakephpですが、その勉強のために今回もドットインストールさんにお世話になりました。

CakePHP入門 (全32回) - プログラミングならドットインストール

 

今回のエントリーでは、そのドットインストールの講義で勉強していく中で、注意するべき点や補足として知っておいた方がよいなと思ったことをまとめていきたいと思います。

 

セッティングについて(主にXAMPP)

セッティングもXAMPP環境でやっていたので若干違ったり、バージョンもアップしていたのでプラスでセッティングしなければいけませんでした。

 

それを補う上で役に立ったのがこちらのサイトです。

xampp環境にCakePHPをインストール | 大八プレス

 

初期のエラーメッセージはこちらを参考にすると大方消せるかなと思います。

 

あと、データベースの設定はこちら

導入編: CakePHPフレームワークで行こう

 

例えば、自分に関してはloginをroot、password空白で自分はデータベースを設定しましたが、そのような部分も気をつけて設定していけばいいと思います。

 

あと、tmpフォルダの所有者設定についてですが、自分に関しては自分のパソコンでローカル環境でやってたこともあって、特に設定の必要はなさそうな感じでした。

 

MVCモデルについて

次にMVCモデルに入っていくのですが、ここでも流しでやってると疑問が色々思い浮かんでくるので、ここらへんを押さえてやっていけば、もっとスムーズにいくのでは?と思います。

①モデルの単数形とデータベースの複数形が一致するよう設定されている。


②モデルの単数形とコントローラーの複数形が一致するよう設定されている。

 

③Postsのコントローラー(PostsController)を作成したので、Postsのビューがいる。

→ ビュー内にPostsフォルダとコントローラーで設定した関数名に適合したファイル(ここではindex.ctp)作成

 

④URLも複数形(小文字)となる。

※ もしURLを単数形にすると、単数形のコントローラーとビューが必要というエラーが出る

 

以下のサイト2つはMVCの勉強を進めていく上で大変参考になりました。

cakephp2.x - CakePHPのテーブル名「単語の複数形」について - Qiita

cakePHP2.xの命名規約 | CakePHP2.1初心者メモ

 

関数について

やっていく中で関数でつまづいて、悩んだものもいくつかありました。

それらについて、理解を深める上で良かったサイトをいくつか紹介していきます。

 

$this->Html->link

CakePHP htmlヘルパーでリンクを出力する -でじうぃき

 

$this->redirect

CakePHPでリダイレクトの際にパラメーターを設定する | システムサポート技術ブログ

 

配列のコントローラーの省略や引数渡しの部分については上2つは似ている感じなので一緒に参考にするとよいかもしれません。

 

find関数関係

データを取得する — CakePHP Cookbook 2.x ドキュメント

 

その他

HTMLヘルパーでの呼び出しならリクエストにget、Formヘルパーでの呼び出しならリクエストにpostがそれぞれコントローラーに返される?(関連記事見つけれず…)

 

Modelにおいて、そもそもtitleとbodyが空白のデータは追加出来ないように設定しておく(Modelはデータベースと直結) ※ #16

 

アソシエーションが設定されているので、indexの「 $this->set('posts', $this->Post->find('all')); 」「<?php foreach ($posts as $post) : ?>」で$postの配列にCommentの要素も格納されている。※ #28

 

以上が、今回のエントリーのまとめです!

 

もし、Cakephpをドットインストールで勉強する際には是非とも参考にしてください!

 

それでは、今後とも頑張っていきましょう^-^

 

ではでは~!