カテゴリー
コンピューター

【CakePHP】PHPUnit is not installed. Do you want to bake unit test files anyway? への対処方法

対処方法

vim Config/bootstrap.php

ファイルの最後に次を追記します。

// composerのautoloadを読み込み
require APP . 'Vendor/autoload.php';

// CakePHPのオートローダーをいったん削除し、composerより先に評価されるように先頭に追加する
// https://github.com/composer/composer/commit/c80cb76b9b5082ecc3e5b53b1050f76bb27b127b を参照
spl_autoload_unregister(array('App', 'load'));
spl_autoload_register(array('App', 'load'), true, true);

参考ページですの♪

どんな状況で発生したか?

カテゴリー
コンピューター

Composer で開発用 CakePHP2 をインストールする手順★いつも使うプラグインも★

CakePHP2 のインストール内容

  • CakePHP とプラグイン、PHPUnit をインストールする
  • プラグインをいくつかインストールするが、有効にするのは DebugKit のみ
  • DB名:cake4db、ユーザ名:cake4user、パスワード:cake4pass、文字コード:utf8
  • ウェブサーバのドキュメントルートは /var/www/html/
  • CakePHP をインストールするプロジェクトのルートディレクトリは /var/www/html/cake4/
  • http://IPアドレス/cake4/ でアプリトップ、 http://IPアドレス/cake4/test.php でテストページトップへアクセス

データベースを作成

カテゴリー
コンピューター

CakePHP 2.5★今度は逆から SELECT する★Containable ビヘイビアチュートリアル2♪

の続きとなります。前回は、Containable ビヘイビアを使って、User からスタートして hasMany しているデータをたどって最大4階層先の HistoryNote レコードを取得しました。

ふと、思ったのです。

HistoryNote から belongsTo をたどって User のデータを取ることも Containable ビヘイビアならできるはず!と。

今回はその記録を投稿いたします。もちろん、できましたわ♪belongsTo をたどるだけでなく、たどった先のモデルが hasMany しているデータも取得できましたの♪

はじめに。ER図、アソシエーションの確認!

カテゴリー
コンピューター

★2回め挑戦★CakePHP2で認証、Auth コンポーネントのサンプルを世界一シンプルを目指して作ります。

CakePHP2 認証、Auth コンポーネントのサンプルを世界一シンプルを目指して作ります。 | oki2a24 を試してみましたけれども、これをもう一度勉強したいですの。

ポイントは次の認証コンポーネントの AuthComponent::allow() ですの♪

今回は、bake を使って認証していないとアクセスできないサイトのサンプルを、やはりシンプルさとお手軽に体験できることを目指して作ります。

  • Composer で CakePHP2.5.4 をインストール
  • Apache、MySQL

0.作るサイトの仕様を決めます

ログインページ、ログアウトページ以外に、4種類のページ(CakePHP のコントローラー)とそれぞれのページに対して一覧、詳細、登録、編集、削除ページ(CakePHP のアクション)を設けた、合計16ページです。

認証要否一覧表

No ページ名 一覧 詳細 登録 編集 削除
1 users
2 articles
3 letters
4 posts

認証が、ログインがなら「要」

カテゴリー
コンピューター

【CakePHP2】URL で2つ以上のクエリパラメーターを設定してアクションに渡す方法

ポイント

  • URL でコントローラーとアクションを指定してクエリパラメータの間をスラッシュ「/」で区切れば複数個のクエリパラメータを設定することが可能
  • クエリパラメータが無い場合を想定して、アクションの引数にはデフォルト値を設定するべき
  • コントローラーのアクションまで URL に指定しなければならない。たとえ index アクションであっても、クエリパラメータを渡す時は明示的に URL に指定する必要がある
カテゴリー
コンピューター

CakePHP 2.5、Containable ビヘイビアチュートリアル♪

Containable ビヘイビアをもっと理解したいと思いましたの。

なんとなくわかるのですけれども、実際に体験したいと思いましたので、自分人のためのチュートリアルを本投稿で実施したいと存じます♪

Containable ビヘイビアでできることまとめ

  • 深い階層のデータを取得できるのではなく、取得したいモデル、モデルのカラムのデータを指定することができる
  • 逆に、モデルを記述しないことで取得したくないデータを除いて取得することができる
  • 単一のモデルに設定したアソシエーションのデータだけではなく、アソシエーションをたどってつながりのあるモデルのデータを取得することができる
カテゴリー
コンピューター

Composer で CakePHP 2 のプラグインをインストールしようとして躓いたこと!

2つの!Composer で CakePHP 2 のプラグインを管理したいのにわからなかったこと!

  • Composer で管理できる CakePHP プラグインの調べ方がわからなかった。
  • プラグインの名前、バージョンをどのように記述すればよいかわからなかった。

Composer で管理できる CakePHP 2 のプラグインを調べる方法!そして composer.json への記述方法

  • Packagist で検索する。
  • 探し方は、プラグインの GitHub ページにあるリポジトリ名またはオーナー名で検索する。

composer.json  に適当に CakePHP プラグイン設定を書いてみて失敗した風景><

スクリーンショット 2014-09-09 21.11.07.png

カテゴリー
コンピューター

CakePHP の Composer でのインストールに躓いたとき見る点2つ!

webroot/index.php の編集に失敗した時にチェックするポイント!

  • Composer でインストールし、プロジェクトを bake した時のメッセージをよく読むこと!
  • 編集に失敗したら、ブラウザでエラーの内容をよく確認すること!

なんとも基本的な内容ですこと><。恥ずかしいですわね><。ですけれども小一時間ほどハマってしまいましたので、自戒を込めてポイントをメモいたします。

CAKE_CORE_INCLUDE_PATH を設定するポイント!

  • プロジェクトを bake したときに表示されるハードコードしたパスの内、ルートから CakePHP をインストールしたディレクトリまでのパスを「ROOT . DS . APP_DIR . 」で置き換える
カテゴリー
コンピューター

サブディレクトリに CakePHP をインストールしたい時の nginx 設定

環境、CakePHP のインストール条件

  • ドキュメントルートは /var/www/html/
  • ドキュメントルートには WordPress がインストールされている
  • WordPress 用にパーマリンク設定を施している
  • CakePHP を /var/www/html/cake/sample/ にインストールしたい

ポイント

  • CakePHP をインストールしたサブディレクトリにアクセスしたとき、CakePHP の webroot/ にアクセスするようにエイリアスを設定する。
  • パーマリンク設定を行う。
  • もし WordPress のパーマリンク設定が nginx 用に既にされているのなら、不要。(未検証)

具体的に次の設定を加えれば OK でした♪

カテゴリー
コンピューター

Composer を使った CakePHP のアップデート方法メモ

スクリーンショット 2014-07-13 8.50.57.png

以前、Composer で CakePHP をインストールいたしました。

その時の CakePHP のバージョンは「2.4.2」でございました。調べてみますと、Composer を使用すればアップデートできそうですのでやってみます♪

簡単にアップデートできました♪