サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
買ってよかったもの
asaton.seesaa.net
CakePHPでmod_rewiteを使わない場合下記のようにすればOKみたい。 /app/config/core.php 40行目の // define ('BASE_URL', env('SCRIPT_NAME')); のコメントアウトをはずす define ('BASE_URL', env('SCRIPT_NAME')); /,/app,/webrootの.htaccessを削除 アクセス方法は、index.phpを追加し下記のようになる。 http://cakeのパス/index.php/コントローラ/メソッド/パラメータ CodeZineの「CakePHP内の処理を理解する」(2ページ目真ん中下ぐらい)の「注:mod_rewriteのない環境では?」では画像ファイルやcssファイルを移動しないといけないと書かれているが上記の方法で移動しなくてもアクセスできる。 なお、CakePH
CakePHPはグローバル変数$TIME_STARTにスタートした時間を記録している。(cake/bootstrup.phpで記録しているので多少の誤差はある) productionモード以外ならHTMLコメントとして最後のほうに出力されている。 (app/webroot/index.phpの85行目あたり参照) なのでindex.phpの該当箇所を参考にして作成してみた。 ビューファイルに下記コードを挿入する。 (例、app/views/layouts/default.thtmlのfooterのdivに) <?php global $TIME_START; echo round(getMicrotime() - $TIME_START, 4)."秒"; ?> エレメント化したいなら、app/views/elements/にtimer.thtmlを作成し上記コードを挿入し、ビューファイルの
CakePHPでサイトを構築する場合、php関連のエラー情報をログに保存しておきたい。 具体的には、app/webroot/配下の.htaccessに下記のように記述して php_flag display_errors off php_flag log_errors on php_value error_log "./logs/php_error.log" しかし、app/configのcore.phpの52行目あたりを define('DEBUG', 0); // 0はプロダクションモード に変更してみるとログにエラーが記録されない。 で、原因を調査してみると、cake/libs/configure.phpのConfigure::writeでerror_reporting(0)が実行されている為と分かった。 さすがに本番稼動でerror_reporting(0)はまずい。。。 もちろん、
ビューの$title_for_layoutにページのタイトルが格納されている。 タイトルをカスタマイズしたい場合、コントローラの $this->pageTitle に設定してやるといいらしい。 でこのpageTitleだがマニュアルのコントローラの変数の説明には記述されていない。 どこに載っているかというとビューのレイアウトの説明(下のほう)のところに記述されている。 下記url http://www.cakephp.jp/doc/views.html#id4808138 少しハマった・・・
ソースを徘徊しているとたまたま発見。 ドキュメントにはまだ掲載されていない。 これで、PEAR::Services_JSONもphp-jsonも使用せずフレームワークのみで完結できる。 しかし、JSONからPHPオブジェクトに変換する方法は提供されていないみたいだ。 これまで、PEAR::Services_JSONのencode()で行っていた処理を、Javascript->object()で動作確認してみたがとりあえず問題ないみたいだ。 問題は、objectという名前が直感的にわかりずらいことだ。 (toJSON()とかならね・・・)
CakePHPでヘルパーというのは、マニュアルでは http://www.cakephp.jp/doc/helpers.html ヘルパーは、データの整形や表示などの、ビューで一般に必要とされる関数を便利な仕方で提供する方法です。 と定義されており一般にビューで使用されるものだ。 しかし、CakePHPの標準で提供されているヘルパークラスの中には、TimeHelperクラスのdaysAsSqlメソッドなどSQLのwhere句を作成するのを助けてくれるような、コントローラクラスでぜひとも使用したい便利なメソッドも定義されている。 そこでコントローラ内で var $helpers = array('Html', 'Form', 'Time'); と定義し、ビューファイルで$Time->daysAsSqlとアクセスするように、アクションメソッド内で $sql = $Time->daysAsSql
この記事へのトラックバック チェリー脱出!!! Excerpt: とうとう俺もチェリーコンプレックス脱出! Weblog: はやしだ Tracked: 2007-07-10 16:02 負けても勝ち組w Excerpt: てぃん★てぃんシゴきまくってもらって5諭吉くれるってどんだけww パチ屋行く前の軍資金集めの定番になってしまったw Weblog: ドンパッチ Tracked: 2008-02-16 14:51 助かった。。 Excerpt: x6ZiGeZc ヤリまくったら500マンなんか一瞬やったわぁ~ww てぃんてぃん腫れたけど、デカくなったし別にええわw http://wiiwi.net/yutori/x6ZiGeZc/x6ZiGe.. Weblog: 借¥地獄から脱出 Tracked: 2008-03-09 20:48 あっちーーーー!!!!!! Excerpt: 人生初のSМ
app/config/core.phpに define('CAKE_SESSION_TIMEOUT', '120'); がありこれを変更すればタイムアウト時間を変更できる。 注意しなければならないのは、デフォルト値は120となっているがこれは120秒という意味ではない。 CakePHPのセションのタイムアウト時間の設定値は、 CAKE_SECURITY * CAKE_SESSION_TIMEOUT から導き出される。 つまりデフォルトの場合、CAKE_SECURITYは define('CAKE_SECURITY', 'high'); と設定されており 120*10=1200秒 ということになるのだ。 CAKE_SESSION_TIMEOUTの定義のコメント欄には英語で high: multiplied by 10 medium: is multiplied by 100 low is:
久々に更新!! 最近、CakePHPを色々な案件で使用しているのだが、 メモしておかないと次探すのが面倒なので書く。 CakePHPでは、findAllメソッドなどの$conditionsに配列を渡せばwhere句を構築してくれる。 例えば、 $conditions = array('and' => array('Field.id = 3', 'or' => array('Field.id = 1', 'Field.id = 2'))); とした場合 WHERE (`Field`.`id` = 3) AND ((`Field`.`id` = 1) OR (`Field`.`id` = 2)) としてくれるので、自分でandでつないで次、orでつないでと文字列として作成するよりプログラムが組みやすい。 で、$model->queryでも$conditionsを配列として構築しておき、sqlを
Ruby on Railsの規約にテーブル名は複数形でなければならないというのがある。 たとえばuserの場合テーブル名はusersになる。 しかし、すべてが名詞+'s'という形ではない。 たとえば、manの場合、複数形はmenだ。 この名詞の複数形は何か迷った場合、下記のように調べればいい。 プロジェクトの任意のディレクトリで $ruby script/runner 'p "man".pluralize' men $ruby script/runner 'p "man".singularize' man またscript/console上からも実行できる。 $ruby script/console >> puts "man".pluralize >> men >> puts "men".singularize >> man
CakePHPで下記サイトを構築してみた。 http://jobrss.net フィード配信している転職サイトの新着求人情報を検索できるサイトです。 定期的に巡回しているので新着求人情報がどんどん追加されていきます。 (1日500件以上追加されてます。今後が心配・・・) 環境を参考までに サーバ : xrea+(PHP5,mysql) フレームワーク : CakePHP(1.1系)、paginationコンポーネント RSS解析エンジン: SimplePie レンタルサーバ使用ですが結構快適に動いています。 (レンサバでも動くフレームワークってすごくないっすか???) cronでrssフィードを取得していますがこれもCakePHPで動いています。 参考:Tips/cronで実行 今後の目標 1.検索機能の強化。(注目のキーワード等表示させると面白いかも・・・) 2.人気順に表示(ajaxで
このページを最初にブックマークしてみませんか?
『Webプログラミングに関するメモ』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く