【PHP】フレームワーク CakePHP 12ホール目【笑】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/07/01(金) 16:33:46.28ID:???CakePHPから派生したLithium(li3)も専スレできるまではここでどうぞ
質問するときはCakePHPのバージョンを書きましょう
※sage推奨
※質問時もsageること
※他フレームワークとの比較等はスレ違いです
テンプレは>>1-5くらい
■本家
http://www.cakephp.org/
APIドキュメント
http://api.cakephp.org/
the Bakery
http://bakery.cakephp.org/
CakeQs
http://cakeqs.org/
CheatSheet (PDF)
http://cakephp.org/files/Resources/CakePHP-1.2-Cheatsheet.pdf
github - cakephp
http://github.com/cakephp
■日本語公式
http://cakephp.jp/
フォーラム
http://cakephp.jp/modules/newbb/
cookbook(マニュアル)
http://book.cakephp.org/ja
前スレ
【PHP】フレームワーク CakePHP 11ホール目【v1.3】
http://hibari.2ch.net/test/read.cgi/php/1297860755/
0082nobodyさん
2011/07/20(水) 20:35:12.17ID:???pconnect使わなければプログラム終了したらDB接続も勝手に切れる。
嫌ならロックやトランザクション使うときだけ明示的にconnectする。
>>80
AppModelかBehaviourに
$db =& ConnectionManager::getDataSource($this->useDbConfig);
return $db->begin($this);
こんなメソッド書くかんじ?
同じDB接続なら二回目以降は無視するとかcommit/rollbackをまとめて行うとかの工夫はほしいけど。
0085nobodyさん
2011/07/21(木) 00:07:23.26ID:???通常はsaveAllで事足りるはず。
MySQLならinnoDB使ってれば自動でトランザクションしてくれる。
0086nobodyさん
2011/07/21(木) 07:30:42.02ID:???alpha版ためしたらエラーでまくりだった;
Lithiumとどっちが先か・・・
0087nobodyさん
2011/07/21(木) 14:11:40.28ID:???通常の範囲せますぎやない?
クエリの間に判定や分岐をいれたいことって多々あるとおもう。
MySQLのストアドは弱いしね。
0089nobodyさん
2011/07/21(木) 16:40:06.60ID:???例えば、会員情報を更新しようとして、一緒に
プロフィールテーブルやポイントテーブルを更新する事は想定できるだろ。
0091nobodyさん
2011/07/21(木) 18:32:52.63ID:???0092nobodyさん
2011/07/21(木) 19:02:21.63ID:???流れ見ててるからわからん。
>>87
saveallじゃ足らんって言ってて
>>88
具体的にどんな時に必要?
>>89は
プロフィールテーブルやポイントテーブルを更新する事は想定できるだろ。
↑これはsaveallで足りるから、まさか>>88へのレスでは無いとは思うけど、
どうなんだろうって思ったから。
009392
2011/07/21(木) 19:15:12.79ID:???会員AからBにポイントを振る場合は、
トランザクション処理になるだろうけど、
cakePHPの場合、model->saveに渡す配列に
ちゃんとデータを入れれば、
saveAll一発で済むし。
0094nobodyさん
2011/07/21(木) 19:18:17.61ID:n5p3Ei1e・ポイントをプラスする
・ポイントが500以上になったユーザーのプロフィールを更新する
こういうのはSaveAllじゃダメだろ。
どんだけ単純なアプリ作ってるんだよ。
0095nobodyさん
2011/07/21(木) 20:01:13.12ID:???単純思考過ぎる。saveAll一発でいけたら苦労しない
0096nobodyさん
2011/07/22(金) 17:29:49.62ID:???int(2)
これって同じことなの?
0097nobodyさん
2011/07/22(金) 18:25:40.59ID:8Fm0K952ちがうよ
0098nobodyさん
2011/07/22(金) 18:31:43.01ID:???MySQLでのテーブル定義時の話だよね?
TINYINTは-128から127 (符号無しの場合0から255)が保持可能
INTは-2147483648から2147483647 (符号無しの場合0から4294967295)が保持可能。
型の後ろのカッコは表示幅。(2)は2桁に満たない場合に0フィルしてくれるけど3桁だと
幅指定無視して3桁表示される。切り捨てたりするわけではない。INTだと4桁、5桁も
ありえるので、そういう値を扱うとき同じとはいえない
0099nobodyさん
2011/07/22(金) 20:18:54.31ID:???仕様が良くあると思いますが、この場合のバリデーションってどうしてます?
0100nobodyさん
2011/07/22(金) 20:32:49.17ID:???0101nobodyさん
2011/07/22(金) 20:54:14.56ID:???で作ればいいだけでは?
0103nobodyさん
2011/07/22(金) 21:25:49.24ID:M3kIDpUH0105nobodyさん
2011/07/22(金) 22:13:36.68ID:???0106nobodyさん
2011/07/22(金) 22:32:30.85ID:???おいらはAuthコンポーネント使うからコントローラで
$this->Auth->password($hogehoge)
かな。
0107nobodyさん
2011/07/22(金) 22:36:18.41ID:???if ($this->User->validates() {
$this->data['User']['password'] = $this->Auth->password($this->data['User']['password']);
$this->User->save($this->data, false);
}
てな感じで、一度バリデーションして
問題なければパスワード暗号化してそれからsaveするんだよね?
好きにしろって言われればそれまでだけど、他はどうしてるか気になってね
0108nobodyさん
2011/07/22(金) 22:47:57.32ID:???password1 == password2のバリデーションをpassword1 に設定
コントローラで
$this->data['User']['password'] = $this->Auth->password($this->data['User']['password1']);
$this->User->save($this->data, true);
みたいにしてる。定石かどうかは知らん。
ただ、入力をpasswordにするとAuthコンポーネントが
勝手にハッシュ化してめんどいことになる。
0109nobodyさん
2011/07/22(金) 22:57:53.24ID:???0110nobodyさん
2011/07/23(土) 01:00:17.82ID:???if ($this->User->save($this->data)) {
save後の処理
} else {
$this->set('error', '登録に失敗しました');
}
0111nobodyさん
2011/07/23(土) 01:38:41.86ID:???くだらなくない。商用コードでそれ抜くやつはほんと勘弁してほしい。
実際はModelでException投げるのがスマートかもね。
0114nobodyさん
2011/07/23(土) 18:02:27.92ID:???コントローラーに比重を大きくした方がよくね?
高速生産オンリー視点でいえばモデルに比重を大きくした方がいいけど
モデルの比重が大きくなると
拡張や柔軟性が失われるデメリットがある。
大規模サイトに発展する可能性、またはアジャイル開発なら
高速生産と柔軟性のバランスを取った方が良いので
コントローラの比重を大きくした方がよいと思う。
0115nobodyさん
2011/07/23(土) 18:14:28.33ID:???俺もそう思う。モデルにあれこれ書きすぎるのは汎用性が低くなる。
モデルはシンプルで、コントローラで色々操作する方が良い。
0116nobodyさん
2011/07/23(土) 19:09:03.76ID:???0118nobodyさん
2011/07/23(土) 20:28:29.38ID:TdNTdShr0119nobodyさん
2011/07/23(土) 22:36:05.05ID:???0121nobodyさん
2011/07/24(日) 09:35:25.15ID:???あれってビューで設定できないの?
CSSなら、
$html -> css('abc', null, array('inline' => false));
でできるんだけど、同じようにタイトルもできたらいいんだけど。
0122nobodyさん
2011/07/24(日) 15:34:45.69ID:???0125nobodyさん
2011/07/24(日) 18:39:27.04ID:???0126nobodyさん
2011/07/24(日) 18:43:37.38ID:???0129nobodyさん
2011/07/25(月) 00:04:03.79ID:???ここ
http://www.toypark.in/
0130nobodyさん
2011/07/25(月) 00:31:03.69ID:???ドキュメントルートの中にしか入れないレンサバなら「3.3.1 開発」のページ
一段上に上がれるレンサバなら「3.3.2 運用」を
VPSとか好きにいじれる鯖なら、「3.3.3 応用インストール」を見て好きなところにコアを入れればいい。
0131nobodyさん
2011/07/25(月) 01:23:27.03ID:???/public_html
└/cake
で、いんじゃないの?
0132nobodyさん
2011/07/25(月) 22:18:23.04ID:???マッチングサイトの「さぶみっと!」ってCakePHPで開発してるんですかね?
ログインフォームを見ると、name="data[Customer][c_mail]"
みたいになってました。
0133nobodyさん
2011/07/26(火) 01:54:11.26ID:???0134nobodyさん
2011/07/26(火) 01:54:48.76ID:???http://cialla.toypark.in/note/dev20100702_01.php
一番下に書いてあるようにアクセスのURLがださい。
>アクセスは http://cialla.toypark.in/sample/index.php/コントローラー/アクション/引数 のように
>index.php をはさむ形になります。
こんなのは嫌だから他のサーバーに変えたい。
CakePHPが使える無料のサーバーのお勧めはある?
0135nobodyさん
2011/07/26(火) 08:26:21.57ID:???はい次の人
0136nobodyさん
2011/07/26(火) 15:45:29.74ID:HGkMvVWC月200円捻出してXREAでも借りた方がいいと思う
0137nobodyさん
2011/07/26(火) 18:15:32.16ID:???月100円でも出せば、ロリポップやさくらでも借りられるだろ。
それすら出せない奴がFWでどんなコンテンツ提供するって言うんだ?
0138nobodyさん
2011/07/27(水) 08:20:56.42ID:???2.0系を新規に使うのはまだ早いかな?
0140nobodyさん
2011/07/27(水) 11:35:39.15ID:???0141nobodyさん
2011/07/27(水) 12:15:56.89ID:???0142nobodyさん
2011/07/27(水) 13:06:18.65ID:???0143nobodyさん
2011/07/28(木) 01:45:02.72ID:???PG歴8年で、PHP歴は1年程度です。
フレームワークを使わないPHP開発は一通り経験しているつもりです。
まだcakeを紹介したサイトをいくつか読んだレベルなのですが、
「なぜcakeを使うのか?」がいまいちピンときていません。
開発スピードなら、既成ライブラリや私製ライブラリで十分な成果が出る気がします。
MVCがしたいなら、別にcakeをつかわなくてもできるんじゃ?と思います。
複数PGでの協業にcakeが威力を発揮するとも思えないのです。
みなさんはなぜcakeにかぎらず、PHPフレームワークをつかっているのでしょうか?
みなさんのご経験された案件でcakeなりPHPフレームワークを使うことを決定した理由は
なんなのでしょうか?差し支えなければ教えてください。
0144nobodyさん
2011/07/28(木) 02:05:07.80ID:???core.php
Configure::write('Session.timeout', '720');
Configure::write('Security.level', 'low');
こういう設定なのに、、、
ほかにセッション関連の設定ってあったっけ?
0145nobodyさん
2011/07/28(木) 09:25:36.36ID:???デザイナがいなくて画面を自分で作らなければいけない仕事をやってるんで、
scaffoldを吐き出してくれるのが一番助かってるかなあ。
あとはクエリパラメータを関数の引数にマップしてくれるので
どこでどのパラメータを使っているかわかりやすいとか。
フォームヘルパーみたいのも自作しなくてすむし。
ページングも楽だ。
まあ、単体で見るとたいしたことなくても、Railsがフルスタックフレームワーク
と言われていたように、オールインワンでそろってるのが楽なわけよ。
0146nobodyさん
2011/07/28(木) 09:31:09.08ID:???俺は単に「ネット上の情報が一番多い」事が理由だな
cakeに限らない場合、命名規則や開発方法が決められていると、
開発時の迷いが少なくなるというメリットがある。俺にはこれがでかい。
0147nobodyさん
2011/07/28(木) 09:35:44.21ID:KTDSJqbkあと情報が多いのも理由ですね、ここもそうですが他のプログラマーの意見を見るのも参考になりいますし。
0148nobodyさん
2011/07/28(木) 10:55:09.01ID:???チーム開発してると合意というか統制がとりやすい。デザインパターンみたいなもん。
保守面でもFWのバグやセキュリティフィックスの作業が軽減できる。
Cake1.x自体は構造が古くてクソだけど。
0149nobodyさん
2011/07/28(木) 14:22:31.40ID:???0150nobodyさん
2011/07/28(木) 16:15:59.59ID:???これなんだけど、
ログイン情報を Session->write() で書き込んで
>>144のような設定なのに数時間ぐらいで切れる
だれかエスパーして
0152nobodyさん
2011/07/28(木) 17:10:54.49ID:???セッションファイルは本当に削除されてるか?
0153143
2011/07/28(木) 19:26:15.08ID:???>>146
>>147
>>148
なるほど。
参考になります。
と同時に自分の浅はかさを露呈したと赤面の限りです。
もうちょっと勉強してでなおしてきます。
みなさまご丁寧に返信有難うございました。
※2chでこのようにまともに
返信いただけることも少ないもので。
0154nobodyさん
2011/07/28(木) 20:14:41.46ID:???いきなり長文で余計な情報いっぱいの質問しても、
普通は回答なんてこないよ。
要点を手短に、具体的に。
あなたの質問なら
>「なぜcakeを使うのか?」
この1文以外は余計な情報じゃないですか。
0156nobodyさん
2011/07/28(木) 20:55:36.17ID:2K/biVGO0157nobodyさん
2011/07/28(木) 21:08:06.68ID:???そうでなきゃPHPなんか使う気がせん
0158nobodyさん
2011/07/29(金) 08:25:57.30ID:???日本語でなんていうの?
0159nobodyさん
2011/07/29(金) 09:42:25.49ID:???0160nobodyさん
2011/07/29(金) 14:16:11.30ID:???IT用語かな読み辞典を作ろうと思うけど
どうですか?
0161nobodyさん
2011/07/29(金) 14:42:46.19ID:???0162nobodyさん
2011/07/29(金) 15:44:08.35ID:???0166160
2011/07/31(日) 15:09:43.71ID:???memcached
これ日本語で統一されてないと
時間ロスになるじゃん。
だから
プログラマーのためのIT用語かな辞典が欲しいのであります。
0167nobodyさん
2011/07/31(日) 15:23:59.96ID:???0168nobodyさん
2011/08/01(月) 10:38:44.82ID:???ページ表示すると、CakeSqlLogが84行とかあるんだけど。。。
あえて可視化されて、多く感じるだけで、
他のフレームワークや、普通のシステムもこれぐらい投げてるものなのかな?
0169nobodyさん
2011/08/01(月) 11:24:17.47ID:???2系でそういうの無くなればいいが、おそらく無くならないだろう・・・
0170nobodyさん
2011/08/01(月) 12:00:23.31ID:???0171nobodyさん
2011/08/01(月) 14:47:33.56ID:???しかもその後自分でlastinsertidしようとすると、またクエリ投げるし。
キャッシュ効いてるから対したロスではないんだろうけども、気になる。
0172nobodyさん
2011/08/01(月) 14:58:08.84ID:???さくらインターネットからプログラム見なおせゴルアとお叱りうけて、
同時接続数制限かかりました
0177nobodyさん
2011/08/01(月) 19:40:28.61ID:???VPSはセキュリティとかがめんどくさいし、
値段対スペックもそれほどよくないんじゃないかな
>>174
スタンダードです
>>175,176
ユーザーが増えたのもあるけど、
やっぱプログラムもあると思う
キャッシュ機構使ってないからな
0178nobodyさん
2011/08/01(月) 20:43:41.20ID:???掲示板でそんな重い処理をしてるとも思えないから、インデックスがあたってないとか
slow quelyが多すぎるってことなんじゃないだろうか。
0179nobodyさん
2011/08/01(月) 20:45:09.69ID:???いや、俺が実際、あんたと同じような状況で
さくらレン鯖→さくらVPSに乗り換えてるから。
鯖のパフォーマンスは全く違うよ。値段も月980円だし。
ま、スタンダードプランと比べたら高いけどw
■ このスレッドは過去ログ倉庫に格納されています