Cake PHP 現在利用しているモデル名を取得する

PHP

CakePHP 現在利用しているモデル名を取得する

cake PHP 1.2.3.8166.

PHP

ビューやヘルパーでモデル名を現在利用しているものに可変にしたいことがあると思います。
そんな時は次のようにしてモデル名を取得できます。

 $this->params['models'][0]

$this->paramsはPOSTやGETで送られた情報がまとめられています。
他にも、コントローラー名、アクション名などが取得できます。

 debug($this->params);

などとやってみて一度中を見てみるといいかもしれません。

Cake PHP 現在ログインしているユーザーIDを取得

PHP

CakePHP 現在ログインしているユーザー番号などを取得する

cake PHP 1.2.3.8166.

Authコンポーネントを使って認証をしている場合、ユーザーIDなどを下記のように呼び出せます。

 $this->Auth->user('id')

そのほかにも、有用な情報が

  $this->Auth->user()

で取れますので、

 debug($this->Auth->user())

などとして中身を見てみましょう!

Cake PHP 文字化けを直す

PHP

CakePHPでの日本語文字化けを防ぐ方法です。

  1. データベースの照合順序を”utf8_general_ci”にします。
  2. /views/layouts/default.ctp ののすぐ下に、次の一文を挿入します。
  3.  <?php echo $html->charset("utf-8"); ?>
    

Cake PHP 必須でない項目のバリデーション

PHP

CakePHP Cake PHP 必須でない項目のバリデーション

cake PHP 1.2.3.8166.

バリデーションは下記のようにやれば簡単にできますが

 'number' => array('numeric'),

上記のようにすると、入力内容が必須になってしまいます。

入力内容が空の値で、入力された場合のみバリデーションさせたい場合は、次のようにします。

 //URLを入力があった場合のみ判定したいとき
 'url' => array('rule'=>'url',
 		'required' => false, 
 		'allowEmpty' => true,
 		'message'=>'URLを正確に入力してください。'
 	),

ほかによい方法があるのかもしれませんが、とりあえず。