- 1 名前:nobodyさん [2008/03/14(金) 15:16:00 ID:HF9x5ODX]
- www.cakephp.org/
10分で作るCakePHPアプリ for Windows p4life.jp/cake/ マニュアル日本語化 www.cakephp.jp/doc/ 日本語フォーラム cakephp.jp/modules/newbb/ あとこのへんとか(初心者向けTIPS) www.avatarfinancial.com/pages/cake/ CakePHP入門リンク集 ttp://pub.studio15.jp/2007/11/13/cakephp-links/ 【PHP】フレームワーク CakePHP 2ホール目 pc11.2ch.net/test/read.cgi/php/1194976228/ 【PHP】フレームワーク CakePHP pc11.2ch.net/test/read.cgi/php/1163850802/
- 467 名前:nobodyさん mailto:sage [2008/03/28(金) 14:42:45 ID:???]
- >>466
引数の数を勝手に増やすなw 最後の引数の意味言ってみろよ。 いえなければ赤っ恥だなw
- 468 名前:nobodyさん mailto:sage [2008/03/28(金) 14:42:48 ID:???]
- >>464
おまえ誰だよ?トリップでも番号でもいいから付けろよw
- 469 名前:nobodyさん mailto:sage [2008/03/28(金) 14:44:26 ID:???]
- >>463はPHP4だと
$this->db->select('title'); $this->db->from('mytable'); $this->db->where('id', $id) $this->db->limit(10, 20); こうなります。
- 470 名前:nobodyさん mailto:sage [2008/03/28(金) 14:45:17 ID:???]
- >>464
名無しで必死にレスしてるようだが 名前に番号でもつけてくれないと 今までどんな発言してんかわかんないんだがw
- 471 名前:nobodyさん mailto:sage [2008/03/28(金) 14:46:08 ID:???]
- >>468
どうせトリップつけさせて削除しようって魂胆だろ。 そんな手に引っかかるか。ばーかw
- 472 名前:nobodyさん mailto:sage [2008/03/28(金) 14:46:42 ID:???]
- >>469
わかりやすくていいね、さすがCI ヌルヌルフレームワークとは大違い
- 473 名前:sage [2008/03/28(金) 14:50:37 ID:JUQ1v1x2]
- $this->flash で出てくるはずのページがIE6だと表示されん。ソースは吐かれてる。
ってことはUTF関係か。
- 474 名前:nobodyさん mailto:sage [2008/03/28(金) 14:50:44 ID:???]
- アンチレス繰り返してたら、えらい盛り上がってきた
- 475 名前:425 mailto:sage [2008/03/28(金) 14:54:55 ID:???]
- すみません、途中投稿しました
>>420 その通りですね。同一アプリケーション内でDBをスイッチする事はありえないので リスクとしては小さいため十分検討できます(一応、PostgreSQL使ってる方は注意です) >>424 CodeIgniterもとてもいいフレームワークだと思います ぜひその情熱で当該スレッドを活性化させて盛り上げて欲しいですね >>428 確かにアソシエーションの自動判別が面倒(無理)という事情は分かります 面倒なSQLを叩かずオブジェクティブにデータセットを取得できる機能が すでに実装されていているのですからそれを使うに越した事はありません この辺りの実装はアプリケーション全体のパフォーマンスに影響するため サーバ増設前の改良を十分に検討できる部分だと思います
- 476 名前:nobodyさん mailto:sage [2008/03/28(金) 14:54:59 ID:???]
- 実はアンチを煽って盛り上げさせているというのはナイショだw
見ろ他フレームワーク(特にCI)の静けさを!
- 477 名前:nobodyさん mailto:sage [2008/03/28(金) 14:56:44 ID:???]
- >>469みたいなコードを書くぐらいなら
SQLをそのまま書いたほうがいいな。
- 478 名前:nobodyさん mailto:sage [2008/03/28(金) 15:06:18 ID:???]
- >>428
すみません >>475の説明はちょっと意味不明ですね、スルー推奨です
- 479 名前:nobodyさん mailto:sage [2008/03/28(金) 15:45:01 ID:???]
- Cakeは糞
- 480 名前:nobodyさん mailto:sage [2008/03/28(金) 15:54:32 ID:???]
- aki(ryが本出してるから糞
- 481 名前:nobodyさん mailto:sage [2008/03/29(土) 07:40:57 ID:???]
- あの本は確かに糞だったな
- 482 名前:nobodyさん mailto:sage [2008/03/29(土) 09:07:16 ID:???]
- あれは本当に酷かった
- 483 名前:nobodyさん mailto:sage [2008/03/29(土) 15:28:58 ID:???]
- 文句だけは達者だな
- 484 名前:nobodyさん mailto:sage [2008/03/29(土) 15:56:30 ID:???]
- 達者?
- 485 名前:nobodyさん mailto:sage [2008/03/29(土) 16:10:19 ID:???]
- このスレはいつも無駄に盛り上がるよな
- 486 名前:nobodyさん mailto:sage [2008/03/29(土) 16:54:04 ID:???]
- >>484
ゆとり乙
- 487 名前:nobodyさん mailto:sage [2008/03/29(土) 17:43:56 ID:???]
- >>486
ゆとり乙
- 488 名前:nobodyさん mailto:sage [2008/03/29(土) 20:03:50 ID:???]
- >>486
ゆとり乙
- 489 名前:nobodyさん [2008/03/29(土) 22:04:16 ID:t2qvxoud]
- CakePHPっていいフレームワークだよな
- 490 名前:nobodyさん mailto:sage [2008/03/29(土) 22:08:25 ID:???]
- ソース汚いけどな
- 491 名前:nobodyさん mailto:sage [2008/03/29(土) 22:15:25 ID:???]
- 最高のフレームワークだね
完璧すぎる
- 492 名前:nobodyさん mailto:sage [2008/03/29(土) 22:29:55 ID:???]
- おまいらマインドマップ使ってる?
- 493 名前:nobodyさん mailto:sage [2008/03/29(土) 22:57:31 ID:???]
- 30才過ぎるとマインドマップ使わないと
トイレ行った後とか今まで何考えてたかさえ忘れる
- 494 名前:nobodyさん [2008/03/29(土) 23:43:43 ID:VJRoSuRr]
- なんでマインドマップの話になったか分からないけど、自宅と会社のPCに
FreeMindインストール済み。 自宅ではCakePHPのシステム設計に使ってる。 ひとつずつやる事片付けて、終わったブランチに「レ」のアイコン付けるのが 楽しい。
- 495 名前:nobodyさん mailto:sage [2008/03/30(日) 02:14:14 ID:???]
- UMLはルール化した図解表現
マインドマップは自由な図解表現
- 496 名前:nobodyさん mailto:sage [2008/03/30(日) 02:16:24 ID:???]
- マインドマップで設計し形になったものをUML化する
- 497 名前:nobodyさん [2008/03/30(日) 02:17:48 ID:xhO/sY7i]
- んで、UMLで書いた仕様書を投げ捨ててウンコする
- 498 名前:nobodyさん mailto:sage [2008/03/30(日) 02:19:35 ID:???]
- CakePHP使ってればUMLもマインドマップも必要ない
- 499 名前:nobodyさん mailto:sage [2008/03/30(日) 02:26:47 ID:???]
- 作業途中に仕様的にやばい匂いがしたらマインドマップ使ってる
- 500 名前:nobodyさん mailto:sage [2008/03/30(日) 02:31:49 ID:???]
- 問題を解決しやすい方法として
思ったことを、どんどん言葉として書き出す わかってるからと頭の中でしまいこむと、全体的な解決図を結び付きにくくする
- 501 名前:nobodyさん mailto:sage [2008/03/30(日) 02:45:33 ID:???]
- 難しい状況を言語化する能力がコミュニケーション能力での重要ポイントだと思う。
もっと言語化するクセつければ、コミュニケーション能力向上になるんじゃないかな
- 502 名前:nobodyさん mailto:sage [2008/03/30(日) 17:27:12 ID:???]
- render呼んだ後
すぐexit(); してる?
- 503 名前:nobodyさん [2008/03/30(日) 20:27:27 ID:3z+xm+ln]
- >>473
遅レスだが、ソースの頭にBOMを付けたら表示されるようになた。 が、viewのファイルは8Nで保存しておかないと、たまに悪さをするようだ。
- 504 名前:nobodyさん mailto:sage [2008/03/30(日) 22:06:44 ID:???]
- >>502
もっと常識的な質問たのむ
- 505 名前:nobodyさん mailto:sage [2008/03/31(月) 10:30:36 ID:???]
- >>502
してないよ
- 506 名前:nobodyさん mailto:sage [2008/03/31(月) 10:59:21 ID:???]
- >>505
コンポーネントでrenderを呼んだときは exitしないとデフォルトのrenderが最後に読み込まれるよ
- 507 名前:nobodyさん mailto:sage [2008/03/31(月) 11:00:31 ID:???]
- cakePHPのテスト環境だけど
SeleniumとSimpleTestの組み合わせが最強?
- 508 名前:nobodyさん [2008/04/01(火) 01:26:52 ID:j0Vrw1hD]
- >>507
そっちのテストなら、セレニウムだろうと手作業だろうとなんだって良くね? ユニットテストをするのなら1.2から正式対応したSimpleTestって言うだろうけど。 ていうか、テスト駆動開発って面倒ですよね、時間がかかるけど出来上がり安定するのは確かだけど。
- 509 名前:nobodyさん mailto:sage [2008/04/01(火) 01:34:29 ID:???]
- 正確にはテスト駆動じゃないけど、
ある程度の規模になったら、ユニットテストをやらないなんて 考えられないよ。 修正があるたびに同じテストなんてやってられない。 それこそ時間がかかる。
- 510 名前:nobodyさん mailto:sage [2008/04/01(火) 02:09:46 ID:???]
- Selenium IDE これいいね。これだけでも同じテストする必要がないし
なんといってもテストが楽
- 511 名前:nobodyさん mailto:sage [2008/04/01(火) 12:33:08 ID:???]
- Yahooが占いコンテンツ制作にCakePHPを採用
- 512 名前:nobodyさん mailto:sage [2008/04/01(火) 20:20:10 ID:???]
- なにこの寂びれぶり
- 513 名前:nobodyさん [2008/04/02(水) 00:32:30 ID:Ldo05SB7]
- んじゃ、おれがこのスレを潤わせてやるぜ
ビヘイビアって使ってる?
- 514 名前:nobodyさん mailto:sage [2008/04/02(水) 00:38:10 ID:???]
- >>512
荒らしが去ったので落ち着いただけ。 CakePHPを使って、ようやくサイトを公開できた。 思ったより使いやすいね、CakePHP。
- 515 名前:nobodyさん mailto:sage [2008/04/02(水) 03:09:53 ID:???]
- コンポーネント、ビヘイビア、ヘルパーの中では
ビヘイビアを一番使うな。 よくよく考えると、ソフトウェアの中心はモデル。 その中心の共通処理なんだからよく使うのは当たり前か。
- 516 名前:nobodyさん mailto:sage [2008/04/02(水) 11:07:25 ID:???]
- >>515
ソフトウェアの中心はコントローラー なぜならコントローラーはモデルとビューにも指令を出すが モデルは、たいていコントローラを介してのやりとりになるから そういう考えで行けば、よく使うのはコンポーネントじゃないとおかしい
- 517 名前:nobodyさん [2008/04/02(水) 11:18:11 ID:Ldo05SB7]
- >>516
アフォがあらわれた
- 518 名前:nobodyさん [2008/04/02(水) 11:57:50 ID:KzinrGTW]
- findCount()で count(distinct hoge) を指定したいのですが
それは、findAll() でやるべきなのでしょうか?
- 519 名前:nobodyさん mailto:sage [2008/04/02(水) 12:05:53 ID:???]
- うん。アフォだ。ワロタw
コントローラなんて所詮インターフェースに過ぎんよ。 実際の処理じゃなくて、ブラウザから引数を受け取って それを少々加工してモデルに渡す。 またモデルから受け取ったデータを少々加工してビューに渡す。 流れとしてはこんな感じだね。 「ブラウザ」→「コントローラ(加工)」→「モデル(実際の処理)」→「コントローラ(加工)」→「ビュー(HTML出力)」 っていうか、このように作らないとテストがしづらいったらありゃしない。 SeleniumやCakeWebTestCaseがあるとはいえ、 コントローラを操作してのテストでは範囲が大きすぎる。 もっと小さな範囲でテストできるようにしないといけない。 一番重要な処理を最小限の大きさ(なるべく他に依存しない)で テストすること考えれば、自然とこうなるはず。
- 520 名前:nobodyさん mailto:sage [2008/04/02(水) 15:46:57 ID:???]
- ガソリン安いな〜
これほど自民党の一党独裁の問題点が分かりやすい現象は無いなw
- 521 名前:nobodyさん mailto:sage [2008/04/02(水) 16:07:32 ID:???]
- >>519
そうなんだ。だから本にもモデルのテストの方法しか書いてなかったんだ。 モデルよりコントローラーをテストしたいんだけど・・・ってずっと思ってた。 ということは、僕のプログラムの組み方がよくないんでしょうか。
- 522 名前:516 [2008/04/02(水) 16:33:04 ID:Ldo05SB7]
- >>515,>>121
さきほどはアフォと一言で片付けてしまって申し訳ない、2ch流の愛情表現だと思ってくれ で、>>519のいうとおりアプリケーションの中心となるビジネスロジックについてはコントローラなどでは なくモデル内で実装するべき。一番大切なテストはビジネスロジックであるわけだし、モデルに集約して (かつコントローラとのインタフェースも疎結合にして)コアロジックを実装することでコアロジックを別システムに 再利用しやすくなるというメリットも受けられる。 なので、コントローラはある意味、テストをしなくても問題ないくらい「薄い」実装にするべきだし、コントローラ 内で繰り返しよく使う処理についてはコンポーネント化してあげたほうが、ユニットテストで品質を保証できるので 良いかと。 こんな感じで考えていますが、どうでしょう?
- 523 名前:nobodyさん mailto:sage [2008/04/02(水) 16:44:10 ID:???]
- >>519
Seleniumこれだけあれば、全く十分なんだが これ以外でテストしようとすればコストかかるだけやろ どんくさい作業してんな、赤字やろ?
- 524 名前:nobodyさん mailto:sage [2008/04/02(水) 16:50:49 ID:???]
- >>522
だから何ってかんじだが、それがどうしたんだよ リファレンスに書いてあるようなこと、なんで必死に訴えてるのwww
- 525 名前:nobodyさん mailto:sage [2008/04/02(水) 16:52:59 ID:???]
- 自演厨きたー。うぜえええ
- 526 名前:nobodyさん mailto:sage [2008/04/02(水) 16:56:38 ID:???]
- Seleniumなんかでテストしたら時間(=コスト)がかかるよ。
ブラウザを起動する為、そもそも動作が遅いってのもあるが、 Seleniumだといくつものモジュールが組み合わさった状態で テストするしかないから、どこのバグがあるのか見つけにくい。 またデータの初期化などが出来ない。 途中で内部のデータを調べることも出来ない。 CakePHPにはSimpleTestでブラウザをエミュレートした状態の テストもできるので基本はそれを使ったほうが良い。 Seleniumを使うとしたら、SimpleTestではできない JavaScriptが絡んだ処理のテストぐらいだな。
- 527 名前:nobodyさん mailto:sage [2008/04/02(水) 16:58:43 ID:???]
- リファレンスに書いてあるようなことなのだから、
間違いではないということだなw
- 528 名前:nobodyさん mailto:sage [2008/04/02(水) 17:01:36 ID:???]
- >>522
アプリケーションの中心となるビジネスロジックて何? どんなロジック? 一番大切なテストてどんなテスト? >>モデルに集約して (かつコントローラとのインタフェースも疎結合にして)コアロジックを実装 プラグインと違うの? >>なので、コントローラはある意味、テストをしなくても問題ないくらい「薄い」実装にするべき モデルとビューに命令出すのに薄い実装なんて物理的に無理 モデルはカラッポでOK
- 529 名前:nobodyさん mailto:sage [2008/04/02(水) 17:04:44 ID:???]
- >>526
ブラウザ上でテストするだけなのにモジュールとか関係ないしwww JavaScriptテストやるなら加工しないと出来ないだろwww
- 530 名前:nobodyさん mailto:sage [2008/04/02(水) 17:05:56 ID:???]
- >>526
Selenium使ったことないやろ?正直にいえ
- 531 名前:nobodyさん mailto:sage [2008/04/02(水) 17:08:00 ID:???]
- SimpleTestの方が時間かかるよ
- 532 名前:nobodyさん mailto:sage [2008/04/02(水) 17:08:48 ID:???]
- 内部のデータを調べるようなテスト時間かかるに決まってるやろ
- 533 名前:nobodyさん mailto:sage [2008/04/02(水) 17:09:00 ID:???]
- また、例の嵐だな。
- 534 名前:nobodyさん mailto:sage [2008/04/02(水) 17:09:39 ID:???]
- とりあえず言っておくけど、CIは糞だから、
糞スレでやってねw
- 535 名前:nobodyさん mailto:sage [2008/04/02(水) 17:13:49 ID:???]
- >>532
たしかに!
- 536 名前:nobodyさん mailto:sage [2008/04/02(水) 17:16:18 ID:???]
- >>522
日本語でおk
- 537 名前:nobodyさん mailto:sage [2008/04/02(水) 17:18:56 ID:???]
- なんか、CI普及の為(?)にわざとアフォなことを言っている気がする。
いや、まて、わざと悪い例を出しているのか? まあ、訂正している俺は考えをまとめられていいけどな。 (そして訂正している文を見て学習する人もいるだろう) > モデルとビューに命令出すのに薄い実装なんて物理的に無理 > モデルはカラッポでOK コントローラが出す命令はすごく小さなものだよ。 モデルに対して、「データ取って来い!」「書き込め!」「削除しろ!」 そして、「複雑な一連の処理をしろ!」 前三つは、CakePHPの自動生成コードでも書いてあるから 簡単にわかると思うけど最後の「複雑な一連の処理をしろ!」を モデルに書くべきってことをわかってない人が多いんだよね。 複雑な一連の処理をコントローラに書いてしまう。悪い例だ。
- 538 名前:nobodyさん mailto:sage [2008/04/02(水) 17:27:44 ID:???]
- >>537
テストのことを考えていってんの?俺はテストはブラウザでしかしないからw
- 539 名前:nobodyさん mailto:sage [2008/04/02(水) 17:29:17 ID:???]
- テスト中心に設計するならモデルに詰め込めるだけ詰め込めばいいんじゃね
- 540 名前:nobodyさん mailto:sage [2008/04/02(水) 17:30:57 ID:???]
- >>537
複雑な一連の処理を具体的に述べよ はなしはそれからだ
- 541 名前:nobodyさん mailto:sage [2008/04/02(水) 17:32:26 ID:???]
- where が入るような条件文はモデルに書けばいいの?
- 542 名前:nobodyさん mailto:sage [2008/04/02(水) 17:33:42 ID:???]
- >>537
モデルにもっていっていいのは どこからどこまで?
- 543 名前:nobodyさん mailto:sage [2008/04/02(水) 17:45:27 ID:???]
- >>537
いくら給料もらってんだよ 俺はPHPプログラマで36万円
- 544 名前:nobodyさん mailto:sage [2008/04/02(水) 17:53:38 ID:???]
-
モデル上で別のモデルのデータ取得できなくね?
- 545 名前:nobodyさん mailto:sage [2008/04/02(水) 17:55:24 ID:???]
- >>542
どこまでをモデルでやるかは結局設計しだいだけど、 >>541 ユーザーがフォームからの条件入力。URL形式での条件入力 、つまりコントローラのアクション関数の引数に入る場合。 その引数をもとにモデルを呼び出すわけだけど、 このときのモデルの関数は汎用的なfind関数でもいいし、 もっと簡単に扱いたければ、モデルに専用の関数を作って呼び出す。 汎用的なfind関数を使う場合には、array('key' => '= ' . $value)なんて 条件データに加工しないといけないよね? これがコントローラの処理。 モデルに専用の関数を作る場合、もっと簡単に使える関数にするね。 もちろんその場合、モデル内部でfind関数を使うことになるだろうし、 そのための条件の加工もモデルに書く。 ユーザーの入力した条件が、POSTでくる場合は、 $this->dataから条件を作り出す所までもうちょっと コントローラでやる仕事が増えるだろう。 それでもコントローラの処理(モデルを呼び出すところまで)はこれだけ。 俺ならこのように作るよ。 あとモデルから戻ってきたデータを、ビューで使いやすいように 単純化するのもコントローラの仕事だね。
- 546 名前:nobodyさん mailto:sage [2008/04/02(水) 17:59:00 ID:???]
- >>544
> モデル上で別のモデルのデータ取得できなくね? モデル上で別のモデルのデータを使用したいと思ったとき、 その二つのモデル間には関連性がある。 つまりアソシエーションを定義している。 アソシエーションを定義しているのなら、 モデル内で、別のモデルを呼び出すことが出来る。 Model1の中から、$this->Model2->findAll(); 感じで呼び出せる。
- 547 名前:nobodyさん mailto:sage [2008/04/02(水) 18:01:31 ID:???]
- >>545
モデルから戻ってきたデータを、ビューで使いやすいように単純化 数字にコンマ付けたりとか?
- 548 名前:nobodyさん mailto:sage [2008/04/02(水) 18:02:43 ID:???]
- >>546
そのやり方はCakePHPで推奨されてる方法なの?
- 549 名前:nobodyさん mailto:sage [2008/04/02(水) 18:05:48 ID:???]
- >>546
わざわざアソシエーションするの? いつも結合されて重くなるじゃん
- 550 名前:nobodyさん mailto:sage [2008/04/02(水) 18:06:46 ID:???]
- >>547
それは見た目を変えるだけだからビューの仕事だろうね。 モデルから戻ってきたデータとは、汎用的なfind関数の場合、 $data => array( モデル名 => array( フィールド名1 => 値1, フィールド名2 => 値2, フィールド名3 => 値3, ) ) こんな値が返ってくる。もちろん、これをそのまま ビューに渡してもいいんだけど、これじゃあビューで使いにくい! って言う場合加工する。 そんな場合あるのかって? 余り無いだろう。 そう、だからコントローラの仕事は少ない。 モデルから取得した値をビューに渡す$this->set(・・・) は コントローラの仕事ね。
- 551 名前:nobodyさん mailto:sage [2008/04/02(水) 18:07:42 ID:???]
- >>549
必要なときにつけたりはずしたりする方法は、何度も既出
- 552 名前:nobodyさん mailto:sage [2008/04/02(水) 18:11:37 ID:???]
- >>548
だめなのか?
- 553 名前:nobodyさん mailto:sage [2008/04/02(水) 18:12:12 ID:???]
- >>546
なんでモデルでやるの?そのメリットは?
- 554 名前:nobodyさん mailto:sage [2008/04/02(水) 18:21:49 ID:???]
- >>553
もちろん、直接関係が無いモデルは別々に アクセスするよ。 モデルというか処理の内容から考えて 一つであるべきと思う場合は一つのモデルでやる。 あと、トランザクションの為のメソッドが モデルにあることも興味深いよね。 一連関係ある処理は一つのモデル内で完結させるものと 考えると、なるほどと思わない?
- 555 名前:nobodyさん mailto:sage [2008/04/02(水) 18:23:17 ID:???]
- >>546
モデルは複雑にすべきじゃないよ。な中規模設計したとき アソシエーションで必ず問題起きそう
- 556 名前:nobodyさん mailto:sage [2008/04/02(水) 18:27:56 ID:???]
- >>555
その意見はわからないでもないが、 普通にRDBMSを正規化したとき そういう関連(リレーション)は出来るもんなんだが・・・ RDMSを正規化すると複雑になってしまう。それがいやだから それを解決する為に、O/Rがあるんだと思うぞ!
- 557 名前:nobodyさん mailto:sage [2008/04/02(水) 18:28:26 ID:???]
- ×RDBMSを正規化したとき
○RDBMSでテーブルを正規化したとき
- 558 名前:nobodyさん mailto:sage [2008/04/02(水) 18:32:44 ID:???]
- >>546
ページ数が増えたとき、コントローラを増やすことができるけど コントローラが増えた分モデルを増やすこと出来ないよ。 ひとつのモデルに書くコードが恐ろしく増えるね
- 559 名前:nobodyさん mailto:sage [2008/04/02(水) 18:34:17 ID:???]
- また例の馬鹿か?
- 560 名前:nobodyさん mailto:sage [2008/04/02(水) 18:35:56 ID:???]
- > コントローラが増えた分モデルを増やすこと出来ないよ。
言っている意味が、よくわからないんだが・・・ 例えコントローラが無くてもモデルは作れるし、 一つのコントローラで複数モデルを扱うことも出来るんだが?
- 561 名前:nobodyさん mailto:sage [2008/04/02(水) 18:43:36 ID:???]
- 全てはコントローラに処理を詰め込み過ぎたscaffoldが悪い。
あれがアフォに勘違いを植え込む。
- 562 名前:nobodyさん mailto:sage [2008/04/02(水) 18:49:12 ID:???]
- うーん、自動生成のコードとしては、これしかやりようがない所もあるのだろうけど、
コントローラに処理を詰め込みすぎというか、モデルに処理が何も無いのが いけないんじゃないかな? あれじゃ、単にテーブルに直接アクセスするネイティブな関数の 代わりのクラスにしか見えない。 一番、プログラマがいろいろ書くべきなのはモデルなのに。 逆に言えば、いろいろ書かないといけないものだからこそ 自動生成ではモデルに何もないんだろうね。 でもサンプル程度はほしいかも。
- 563 名前:nobodyさん [2008/04/02(水) 18:53:30 ID:KzinrGTW]
- debugを1以上にするとHTMLの一番最後に
<!-- 0.0012s --> みたいに、生成時間?のコメントがつくんですけど これを付けないようにするにはどうすれば良いんでしょうか? debugは1にしておきたいです。
- 564 名前:563 mailto:sage [2008/04/02(水) 18:58:51 ID:???]
- あ、webroot/index.php にありました。
- 565 名前:nobodyさん mailto:sage [2008/04/02(水) 19:00:37 ID:???]
- cakephpで作られたオープンソースみても
モデルで書かれてる処理はバリデータ関係の関数しかないんだけど code.google.com/p/openflp/
- 566 名前:nobodyさん mailto:sage [2008/04/02(水) 19:00:38 ID:???]
- >>564
Do not changeって書いてあるけどねw
- 567 名前:516,522 [2008/04/02(水) 19:01:23 ID:Ldo05SB7]
- ん?なんかいろいろゴチャゴチャしてきたけど、結局俺が主張してたことは正しかったのか・
「複雑な一連の処理」とかビジネスロジックとかって、たとえば俺の場合は ・@日足の株価を取得してRSIを計算する ・A与えられた条件引数に該当する銘柄の証券コード配列を取得(スクリーニング) ・B現在の株価を受け取り、あらかじめ計算しておいた目標価格の条件を満たすか判別 ⇒・更に条件を満たしていれば、買い/売り注文をWEBサービスに投げる処理も「証券会社モデル」(仮称)というDBと連携しないモデルを作成して、HTTP(S)で注文するメソッドを書いてる。 ・C現在の株価を取得する(楽天証券のRSSをDDE接続経由で呼び出すモジュールを別途使用) みたいなアプリが持つほとんどの主要処理を言ってて、これらをモデル(またはビヘイビア)に記述するべきと思うのです。 逆に言えばコントローラは、 ・Cの「現在の株価を取得する」メソッドからの返し値をそのままB「株価と目標を評価し、注文する」メソッドに引渡し仲介する ・ビューからリクエストがあった@などの計算処理をモデルメソッド@に引き渡す ・スクリーニング対象銘柄の証券コードリストを取得し、そのままAのスクリーニングメソッドに引き渡す。 くらいのことしかしていない。人間の世界でいうと「仲介人」かと。
|

|