skillup

技術ブログ

PHP

cakePHP Tips

投稿日:2015年10月26日 更新日:

cakeでの気づいたTipsなど。

知っているといろんな部分で開発が楽になります。

作成日と更新日の自動設定

レコードの作成日と更新日ですが、

テーブルの設定を

としておくとここに関する処理を一切書かなくても保存したときに自動的に日付の入力が入ります。

ただフィールド名、型、初期値すべて上記の通り設定してあげないとダメです。

CakePHP2でデフォルト値が定義されているcreatedに0が設定される

ちなみにtimezoneはディフォルトでは日本時間になっていないので、下記のように設定しましょう。

リンクは一部間違ってます。 'Asis/Tokyo'=>'Asia/Tokyo' です。

CakePHPにおいて、timezone関連でワーニングエラーが発生

scaffold

scaffoldは超簡易的なCRUD画面を作ってくれる機能です。

お客さんに見せる場合はまずいですが、とりあえずデータを見るだけ・・とかには便利そうですね。

モデルもviewも必要なく、下記の1行だけでOKです。

http://cakephp20sysnsa.blogspot.jp/2012/05/scaffolding.html

新規登録と編集画面の作成

今回、気づいたんですが新規登録と編集画面のテンプレートが全く同じでOKです。

下記がサンプルコードです。

コントローラーがAdminでUserの情報を保存しようとしているケースです。

そしてテンプレートは下記ファイル(userregist.ctp)だけでOK!

モデルがコントローラーとは別になるので注意。コントローラ自体はAdminですね。

自力でこれを作ろうとするとidをhiddenで持たせるとか、valueに値をもたせるとかいろいろやらないといけないから大変なんですよね。

それが一切なく、改めてすげー楽だなと思いました。

htmlヘルパー

リンクのみ

[CakePHP] Formヘルパーを使って日時を入力する

http://book.cakephp.org/2.0/ja/core-libraries/helpers/form.html

日付が絡んだものや、pulldownとかでいろいろ活用しました。

モデルでのfind(list)など

key => valueタイプの配列を作ってくれます。

プルダウンの時とかに便利。

-PHP
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

PHPの配列操作

ながらく放置してました・・・ PHPを久々にやったんですが、やっぱり配列の関数・ライブラリが充実している分、作業がサクサクすすみますね。配列の操作でいろいろと学ぶところがあったんで掲載します。 Con …

no image

apacheで複数インスタンスの起動

前回のphpenvがらみの引き続きですが、php5.6と7を共存させ、なおかつWEBアプリで動かす方法を調べたところapacheの複数インスタンスがであれば可能だとのこと。 早速調べなんとかできました …

no image

cakeでのUtilityメソッド

cakeではControllerから呼ぶメソッドはComponent,ModelはBehavior、ViewはHelperに記述するのが一般的です。 ところが、プログラムを書いているとUtility系 …

no image

クラスメソッドとインスタンスメソッド

以前staticメソッドを定義したときに、記法がインスタンスメソッドの呼び方でも呼べてしまうことがあったので、これを機にインスタンス・クラス×変数・メソッドちょっと調べてみました。 言葉で書くよりコー …

no image

Angularでのイベント+改行+echoでのバッファサイズ変更

Contents1 Angularのイベント処理2 Angularでの改行ネタ3 echoでのバッファサイズ変換 Angularのイベント処理 Angularを使っていて楽なのはHTMLタグにインベン …