skillup

技術ブログ

PHP

cakePHP Tips

投稿日:

cakeでの気づいたTipsなど。

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

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

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

テーブルの設定を

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

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

http://akasingo.com/58

http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=2866&forum=6

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

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

http://notejp.com/pc_use/2011/04/cakephptimezone/

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ヘルパー

リンクのみ

http://www.84kure.com/blog/2015/05/29/cakephp-form%E3%83%98%E3%83%AB%E3%83%91%E3%83%BC%E3%82%92%E4%BD%BF%E3%81%A3%E3%81%A6%E6%97%A5%E6%99%82%E3%82%92%E5%85%A5%E5%8A%9B%E3%81%99%E3%82%8B/

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

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

モデルでのfind(list)など

 

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

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

-PHP
-

執筆者:


comment

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

関連記事

no image

cakePHP3 serialize&compact

Contents1 serialize2 compact serialize cakePHP3の記述で

みたいな記述をよく見かけていま …

no image

PHPでのコンソール入力に関して

PHPはほとんどの場合、ブラウザでURLをたたいてWEBサーバーから呼び出されるパターンがほとんどです。 ところが、コンソールから使いたい場合などもあるでしょう。 コンソールから入力する場合、なんらか …

no image

CakePHP2系でのテスト処理

cakePHP2系でのテストの処理について。 PHPでのテストといえばphpunitが有名かと思います。cakePHPでも標準でphpunitがはいっており、ユニットテストを行うことができます。 Co …

no image

cakeでの多対多を含んだ検索に関して

cakeを使って多対多を実現する方法はこのエントリーで紹介しました。 が、多対多を含む検索をする場合は一筋縄ではいかず結構面倒くさいです。 通常cakeで検索を行う場合、 ‘conditi …

no image

CakePHP3 Unitテスト モデル編

長らくやろうやろうと思っていながら手がつかなかったCakePHP3のユニットテストについて。 以前にも何らかのエントリーで書いたのですが(下記参照)、モデル系はなかなかやらなかったので、これを機に説明 …