Cakephp2.7にDebugkitを入れる

ComposerでCakephpにphpunitとdebugkitを入れてみる | bgbgbg
でDebugkitをいれてましたが、Cakephp 3.0が出た影響で、2.x系にいれるときに
cakephp/debug_kit
に、ばっちし書いてないのでメモ

Cakephpのプログラムファイルの下にcomposer.jsonがなければ用意します
こんな感じであればOKですが

$ tree -L 1

.
├── Config
├── Console
├── Controller
├── Lib
├── Locale
├── Model
├── Plugin
├── Test
├── Vendor
├── View
├── composer.json
├── composer.lock
├── index.php
├── tmp
└── webroot

$ vim composer.json

{
    "config": {
        "vendor-dir": "Vendor/"
    }
}

を指定しておくとCakephpのディレクトリ構成にしたがっててよさそうです
これでcomposerでDebugkitをバージョン指定していれます

$ php composer.phar require –dev cakephp/debug_kit “~2.2”

あとは

$ vim Config/bootstrap.php

CakePlugin::load('DebugKit');

を追記すればOKです

Toolbarを出すには

$ vim Controller/AppController.php

class AppController extends Controller {
    public $components = array('DebugKit.Toolbar');
}

で出せます

Cakephpでルーティングが動かない!?

ComposerでいれたCakephpを動かしてみる | bgbgbg
の手順で新しい環境に入れて、localhost/sample/myappとアクセスするとエラーが..

cakephp-error

デフォルトルートを見るはずがAppControllerを見てしまってるようです
Apacheをいれてて、mod_rewriteは有効にしたし、どうした..とはまりましたが原因は

ls -al /var/www/html/

sample -> /home/user/sample/myapp

とシンボリックリンクの貼る位置を間違えていたのが原因でした

composerでいれる手順として

$ mkdir /home/user/sample/ & cd /home/user/sample/
$ vim composer.json
$ composer install
$ Vendor/bin/cake bake project app

としたので
Cakephpのパッケージファイルは /home/user/sample/Vendor/cakephp
Cakephpの作ったアプリは /home/user/sample/myapp

ComposerでいれたCakephpを動かしてみる | bgbgbg
の設定だと

$ ls -s /home/user/sample /var/www/html/sample
としてしまったところを

$ ls -s /home/user/sample/myapp /var/www/html/sample

として http://localhost/sample
とアクセスする必要がありました

vimで計算をする

vimで作業していてちょっと計算がしたくなった時、vimでできました!

挿入モードで Ctrl + r , = と押せばvimで計算が出来ました
コロン : を打ってからのコマンドモードでも出来ました

vim-calc

vim-calc2

ちょっとした計算ならここでやれて便利です

gitで削除したリモートブランチが手元では残ったとき

とある開発で、gitのリモートブランチ確認したら

$ git branch -a

* master
  remotes/origin/HEAD -> origin/master
  remotes/origin/change-db-seed
  remotes/origin/change-db-seed-activerecord
  remotes/origin/change-header-login-link
  remotes/origin/change-sidebar-cart
  remotes/origin/change-top-image
  remotes/origin/change_ruby_version
  remotes/origin/dev
  remotes/origin/hide-unused-menu
  remotes/origin/install_paypal
  remotes/origin/master
  remotes/origin/set-google-analytics
  remotes/origin/upload-image-to-amazaon-s3
  remotes/origin/webmastertool

とたくさん出てきた
ブラウザでリポジトリ見てみるとそんなにない
ブラウザでブランチ消したりしても、自動で手元も消してくれないわけで

$ git fetch origin –prune
(originは環境に合わせて)

From sample.com:sample/sample
 x [deleted]         (none)     -> origin/change-db-seed
 x [deleted]         (none)     -> origin/change-db-seed-activerecord
 x [deleted]         (none)     -> origin/change-header-login-link
 x [deleted]         (none)     -> origin/change-sidebar-cart
 x [deleted]         (none)     -> origin/change-top-image
 x [deleted]         (none)     -> origin/change_ruby_version
 x [deleted]         (none)     -> origin/dev
 x [deleted]         (none)     -> origin/hide-unused-menu
 x [deleted]         (none)     -> origin/install_paypal
 x [deleted]         (none)     -> origin/set-google-analytics
 x [deleted]         (none)     -> origin/webmastertool

と消されたリモートブランチが手元で表示されなくて、すっきりしました

pruneは〔不要なもの・余分なものを〕取り除く、削るという意味があるようです
参照: pruneの意味・用例|英辞郎 on the WEB:アルク