【PHP】フレームワーク CakePHP 2ホール目
レス数が1000を超えています。これ以上書き込みはできません。
0001nobodyさん
2007/11/14(水) 02:50:28ID:???http://www.cakephp.org/
10分で作るCakePHPアプリ for Windows
http://p4life.jp/cake/
マニュアル日本語化
http://www.cakephp.jp/doc/
日本語フォーラム
http://cakephp.jp/modules/newbb/
あとこのへんとか(初心者向けTIPS)
http://www.avatarfinancial.com/pages/cake/
0951nobodyさん
2008/03/11(火) 17:42:25ID:???どっちもいいと思う。
だけど view で調整のが楽かなぁとも思うし、モデルに書いておいた方が楽なような。
0953nobodyさん
2008/03/12(水) 15:16:31ID:AyOV8gPTで、Bの hoge というフィールドが n の場合という条件を
WHERE句にいれる場合は findAll でどうやればいいのでしょうか?
0954953
2008/03/12(水) 15:22:10ID:???ちなみに、モデルで conditions を指定するやり方ではなくて
B.hoge = n に該当する Aレコードを取得したい、ということです。
0955nobodyさん
2008/03/12(水) 17:07:21ID:???必要なテーブルだけ関連付けてviewで調整してる
テーブルの中のカラムは富豪的に全部持ってきてもバチ当たらないだろ
>953-954
findする前にbindmodelでくっつけてやるのれす
あとそのままだとleftjoinだからinnerjoinにでもしてやればいいんじゃないのかな
でもそんなの調べてる間にSQL書いちゃう方がはえーよたぶん
0956nobodyさん
2008/03/12(水) 21:50:06ID:???をワンセットでやりたい場合はアソシエーション機能を使うのが便利だけど
テーブル結合させたカウントランキング表示みたいな
表示だけにしか使わない複雑なものはSQLで書いた方が効率いいのかな?
これって書き込み編集削除で再利用できないし
0957nobodyさん
2008/03/12(水) 22:19:07ID:???0959nobodyさん
2008/03/13(木) 01:07:36ID:???conditionsに書けばできるのは知っているんだが、
へんな書き方をしないといけないし。
0960nobodyさん
2008/03/13(木) 01:15:18ID:Kbjia7GdEntryモデルとUserモデルという、2つのモデルがあるとして、
以下のようなことをすると、
--------------------
[1] Entryのデータを編集(/entries/edit/1)
↓
[2] Entryのデータを確認(/entries/index、/entries/view/1)
↓
[3] Userから確認(/users/myentries)
--------------------
[2]では即時に[1]での編集内容が反映されるのですが、
[3]では反映されず表示が古いままなんですが、これって何のキャッシュですか?
アクセス元(?)のモデルが違うだけなのにどうして表示される結果が違うんでしょうか?
まだ始めたばかりなので、もし見当違いな質問してたら申し訳ありません、
ヒントだけでも示してもらえると助かります。
0962nobodyさん
2008/03/13(木) 04:04:24ID:???Cakeの場合こういうのは何処に置いたらいいの?
通常のWebサービスと同じくコントローラ作ってそこに書くのが定石?
0963962
2008/03/13(木) 04:19:53ID:???クラス外でhandleCallしたりしなきゃだからベンダーに置くしかないのかな。
0964953
2008/03/13(木) 09:23:03ID:???ありがとです。
とりあえずINNER JOINで解決しました。
やっぱりSQL書いた方が早い&分かりやすいですねぇ。
フレームワーク初めてだから、ついつい全てルールに沿ってやろうと考えてしまう…。
0965nobodyさん
2008/03/13(木) 12:37:07ID:???ビヘイビアのafterFindとかは、モデルごとに呼び出されるのか、
親モデルで一回だけ呼び出されるのか仕様知らない?
たしか親モデルで一回だけ呼び出されるような感じなんだが、
1.2はbetaだし、それがバグなのか仕様なのかわからない。
0966nobodyさん
2008/03/13(木) 15:13:16ID:ERgQfDPOデバッグモードにして投げてるSQL分を追跡してみれば?
というアドバイスはナンセンス?
0967nobodyさん
2008/03/14(金) 10:50:23ID:???8Mじゃすぐリミットオーバーするね
0968nobodyさん
2008/03/14(金) 10:59:44ID:???アソシエーションは便利だけど、ちょっと利用させてもうらために
無駄なSQLもくっついてくるのを我慢しないといけない
0969nobodyさん
2008/03/14(金) 11:01:09ID:???モデルまわりの統制がとれない
0970nobodyさん
2008/03/14(金) 11:10:06ID:???悪魔でも生産性だけを考えた外注用のフレームワークだな
0971nobodyさん
2008/03/14(金) 11:22:16ID:???していく奴がわいているなw
いつも同じ感じだからすぐばれるぜwww
0972nobodyさん
2008/03/14(金) 11:30:51ID:???もっとよい出力場所がないのか?
0973nobodyさん
2008/03/14(金) 11:32:06ID:???0974nobodyさん
2008/03/14(金) 11:38:02ID:???俺はSQL出力は、CSSとJavaScript使って折りたためるようにしているよ。
エラー(黄色い奴)はそもそも、なくさなきゃいけないものだし、
デザインが崩れるだけだからほうっておいている。
0975nobodyさん
2008/03/14(金) 11:39:28ID:???Configure::write('debug', 0);
と設定して
エラー表示したいコントローラーのメソッドの中で
Configure::write('debug', 2);
これ入れたり消したりしながら作業することにした
他に楽な方法あったら教えて
0977nobodyさん
2008/03/14(金) 11:44:06ID:???SQLをログに記録するコラムを参考にdbo_mysqlを継承して
ログを取ることが出来るdbo_mysql_logを作った。
この本は1.1用で、1.2では少しフォルダ構造が違っているから説明しておくと
作ったdbo_mysql_log.phpは /app/models/datasources/dbo に置く。
これフォルダが無いけど、作ればちゃんと動くよ。
0978nobodyさん
2008/03/14(金) 11:48:00ID:???どうしても”SQLだけ表示”じゃないといけないのか?w
デバッグ用なんで力入れて作るものでもないから、
/app/views/layouts/default.ctp に CSSを付け加えて
display:noneで下のSQLの部分を非表示にし、同じく付け加えた
JavaScriptでON/OFFしているだけだけど。
0979nobodyさん
2008/03/14(金) 11:58:52ID:???コントローラにどのページをいれるべきなのか要領がつかめない
0980nobodyさん
2008/03/14(金) 12:24:27ID:???これからCakePHPをいじくりまわしてやるぞ
0981nobodyさん
2008/03/14(金) 12:29:49ID:???> CakePHPて恐ろしくメモリ食うな
> 8Mじゃすぐリミットオーバーするね
どっかのブログに書いてあった”間違い”を鵜呑みにするな。
バグで無限にメモリ消費しているだけだ。
0983nobodyさん
2008/03/14(金) 14:54:30ID:???0985nobodyさん
2008/03/14(金) 14:59:06ID:???0986nobodyさん
2008/03/14(金) 15:08:33ID:???やっているんだが、普通に動くんだが?
どういうことをしたらメモリが足りないのか書いてくれないと
誰も信用しない。
グーグルで検索したというのなら、当然それを見つけているはずなのだから、
どこに書いてあったかかけるはずだ。その書いてある記事を見て判断する。
0988nobodyさん
2008/03/14(金) 15:24:23ID:???PHP4のデフォルトのmemory_limitの値、8Mで
CakePHPが動かないとしたらもっと話題になってるだろ。
常識で考えて。
0989nobodyさん
2008/03/14(金) 22:10:57ID:???フレームワークだからという結論で気にしてないのですが
0990nobodyさん
2008/03/14(金) 22:12:25ID:???0991nobodyさん
2008/03/14(金) 22:55:37ID:???0993nobodyさん
2008/03/15(土) 01:29:06ID:???0994nobodyさん
2008/03/15(土) 02:21:39ID:???ブログラムの暴走じゃないのに8Mいくことがあるし
こんな現象はCakePHPだけ起こってるんだよ
PHPの実務経験8年ある俺が
暴走するプログラムつくるわけねーだろボケが
0995nobodyさん
2008/03/15(土) 02:34:17ID:???大概はデバッガのせいかな。
0997nobodyさん
2008/03/15(土) 02:44:27ID:???メモリオーバーするの俺だけじゃねーだろ?
おまいら見てるだけで実は作業してないんだろ
0998nobodyさん
2008/03/15(土) 02:51:51ID:???何でもプログラム暴走と決め付けるのはおかしいよ
常識的に考えて
0999nobodyさん
2008/03/15(土) 02:53:34ID:???10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。