トップページphp
1001コメント315KB

【PHP】フレームワーク CakePHP 2ホール目

■ このスレッドは過去ログ倉庫に格納されています
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/
0233nobodyさん2008/01/16(水) 00:42:46ID:???
ずいぶん初心者が増えてきたね>Cake
0234nobodyさん2008/01/16(水) 00:46:04ID:???
そもそも楽するための物だから良いかと。
0235nobodyさん2008/01/16(水) 03:05:48ID:???
初心者が安易にフレームワークに頼るのは危ういと思われるよ。
0236nobodyさん2008/01/16(水) 08:37:03ID:???
初心者が読みにくくて危険なコードを大量生産しないために生まれたんだろ?
0237nobodyさん2008/01/16(水) 08:57:12ID:???
どこまで面倒見てくれるか、手間を減らしてくれるか、の要求レベルは人によって違う。なら大は小を兼ねるかと。bake自体、なんか面倒だからと、使いたくない人は使わず、手動でセコセコ作ってる。違う解決法があるなら使いたいが。


まあそれによってフレームワーク自体が肥大するのは困るけど、これはそこまでたいした話じゃない。
0238nobodyさん2008/01/16(水) 11:01:01ID:???
>>232
自分で作れw

エラーメッセージのビューをちょっと置き換えるだけで作れるだろ?
0239nobodyさん2008/01/16(水) 11:33:15ID:???
うん。まあ置き換えただけじゃダメだけどね。
0240nobodyさん2008/01/16(水) 11:49:22ID:???
俺俺関数をグローバルに書きたい時の作法って決まってる?
app/config/bootstrap.php に今はベターっと書いてるんだけど
これだとアプリごとに書く必要があって かといってcake/bootstrap.phpに書いちゃうと
バージョン上げる時に忘れて上書きしちゃいそう
0241nobodyさん2008/01/16(水) 11:52:39ID:???
>>240
コンポーネントじゃなくて?
0242nobodyさん2008/01/16(水) 12:14:38ID:???
app_controllerでいいんじゃね?
コンポーネントはいちいち利用宣言するのがめんどくさくて
ほとんどapp_controllerに書いちゃってるけど、まずいかな?
0243nobodyさん2008/01/16(水) 14:48:27ID:???
オレオレ関数ファイルをvendorsにつくって
bootstrap.php で読み込ませてる
0244nobodyさん2008/01/16(水) 15:53:09ID:???
コントローラとかでしか使わないようなのは、AppControllerだけど、
汎用的な関数は、app/config/bootstrap.php に書いてる。
app以下にあるし、空ファイルだし、そのために作られたファイルだろ?って思ってる。

汎用的なクラスは、vendersにおいて使ってるけど。
0245nobodyさん2008/01/16(水) 15:56:29ID:???
通常コントローラはAppControllerを継承するけど、
間にもう一層入れたい場合どうやる?

Controller

AppController

MyController

FooController

このとき、

class FooController extends MyController

ってすると、MyControllerがいませんっていわれちゃう。
0246nobodyさん2008/01/16(水) 21:13:11ID:???
>>245
MyController は app_controller.php に書いてる。
0247nobodyさん2008/01/17(木) 10:34:58ID:???
コントローラでもビューでもそれ以外でも使うクラスは
何で作る?コンポーネント?

このクラス、モデルデータを必要とするんだよね。
何で作ればいいんだろう?
0248nobodyさん2008/01/17(木) 11:22:09ID:???
>>241-244
vendors/oreore.inc.php に書いて
app/config/bootstrap.php から vendor('oreore.inc');
で読み込むことにしますた さんくす
0249nobodyさん2008/01/17(木) 11:54:11ID:???
質問です。

app/config/core.php
define('DEBUG', 2);

この状態で、特定のページだけデバッグ情報を出さないようにって出来ないものかな?

1)XMLを出力するプログラム
2)それを受け取って処理するプログラム

1の方はもう出来上がってて、デバッグが出力されると構文が崩れて困る。
かといって、define('DEBUG',0);にすると、2の方の開発が困る。XMLは動的なものを使いたい。

0250nobodyさん2008/01/17(木) 13:27:06ID:???
>>245
App::import('Contoller', 'MyController'); //昔はloadController
class FooController extends MyController

ってすればいいんじゃないの?
0251nobodyさん2008/01/17(木) 16:34:27ID:2woYNb+h
>>249

ヒント、
function beforeRender()
{
if ($this->layout=='ajax') Configure::write('debug', 0);
}

これでわかったら、スーパーひとしくんプレゼント!
02522492008/01/17(木) 18:41:28ID:???
>>251
うへー、感動シマスタ
ありがとう!
0253nobodyさん2008/01/17(木) 18:42:25ID:???
>>247
詳しく聞いて無いから間違いかもしれないけど、
たぶんそれは設計ミス。
モデルとコントローラーとビューは疎結合にあるべき。

答えとしてはコンポーネントにモデルインスタンスを渡せば良いと思う。
ビューの部分のロジックは、ヘルパーに委譲。

本当にどうしてもどこでも使いたいなら、bootstrapに書くか、vendorで外部ライブラリとして読み込ませる。
0254nobodyさん2008/01/18(金) 11:33:07ID:???
>>253
単純にiniファイル的な役割をさせたいだけなんだけど・・・
0255nobodyさん2008/01/18(金) 13:06:23ID:???
ビューでformやhtmlのヘルパー使ってるとなんかどこもかしこも
DBのテーブル名やカラム名で溢れてくるんだけど何か間違ってる?
JAVAもRORも途中でめげたんで他との比較は出来ないけどMVCってこういうもんなん
0256nobodyさん2008/01/18(金) 13:10:12ID:???
MVC(改)でやれば
0257nobodyさん2008/01/18(金) 13:15:52ID:???
>>255
たとえば?
0258nobodyさん2008/01/18(金) 16:28:03ID:???
1.2で増えたものかどうかは知らないけど、
調べるついでにマイナーだと思われるものを書いていくよ。
ざっくり調べただけだから間違いがあるだろうが許せ。
というか、誰か補足してくよw

・Configure::store('AAA', 'a', array('data'=>'123'));で値保存。
 /app/temp/cache/persistent/a.php ができる。
 Configure::load('a'); でa.phpファイル読み込み
 pr(Configure::read('AAA')); で保存した値表示。
・flay ・・・Text-to-HTML Textile見たいな物?
 wiki文法みたいに簡易な文法で書いたらHTMLに変換してくれる?
・MagicDb ・・・ 拡張子に頼らないファイル解析?
 MagicFileResourceを継承したクラスを作ることで対応フォーマットが増やせそうだが、
 初期で対応しているフォーマットはなし?http://www.magicdb.orgは関係ありか?
・MediaView ・・・ なんか拡張子に対応したMIMEタイプリストがあるが?
 header("HTTP/1.1 206 Partial Content");とかあるし、ファイルダウンロードさせたいときに使う?
・String ・・・ えー? UTF8対応? 今度からこれ使えと?
・ThemeView ・・・ CSS切り替えみたいなもんか?
・XML ・・・ XMLあつかえるのね。
・Debugger ・・・ デバッガ。便利だよ。デバッガ。
・Socketと名のつくもの ・・・ まあソケットをそのまま触れるのでしょう?
・Controller::isAuthorized() ・・・ 認証系で使うべきものなんだろう。
・I18n L10n ・・・まああれだ。俺みたいに日本専用でビューに直接日本語書いている奴には不要ってこった。
・FormHelper::secure トークンだしてくれる
・PagesController 次に進む なんてページを作るのにいいんだろうなとは思う。名前からして。
・Model::deconstruct ・・・ フォームのフィールド、日付を年ドロップダウン、月ドロップダウン、日ドロップダウン、に
 分かれて入力されているのをひとつにしてくれるっぽい。
・TreeBehavior ・・・ テーブルをツリー構造として見れる? moveupとかmovedownとか
・TextHelper・・・autoLinkってのがある。リンクっぽいテキストをリンクにしてくれる。
 TextHelper::toList ・・・ 日本人には不要w
・ClassRegistry ・・・ ようはオブジェクトがどこからでも見れる? グローバル変数的なので使い方に注意。
0259nobodyさん2008/01/18(金) 16:30:18ID:???
FormHelperって$form->input('field_name')ってするだけで
フィールドの型に応じたフォームが自動で出てくるけど、
これって、ヘルパーがモデルを見てるってことだよね?

それって設計的にありなん?
0260nobodyさん2008/01/18(金) 17:24:57ID:???
この便利関数きっとどこかにあるんだろうなってapiのそれっぽいの見ていって
結局無かった(しかもおそらく見つけられなかっただけでどっかにある)時の徒労感ってなかなかいいよね
英語弱いからなあ
0261nobodyさん2008/01/18(金) 17:27:59ID:???
なかなかいいのかよw

リファレンス本欲しいな。
0262nobodyさん2008/01/18(金) 19:38:04ID:/74lUS2r
INSERT ... ON DUPLICATE KEY UPDATEしたいんですが、
どういう風にやるのがスマートでしょうか?
0263nobodyさん2008/01/18(金) 20:11:24ID:???
あああなるほどbakeでビューに出てきて文字列素通しにしてる__ってのはなんだろうと思ったら
多言語対応のあれなのかようやくわかったありがとう
0264nobodyさん2008/01/18(金) 21:09:17ID:???
今日つかい始めたのだけど、標準でO/Rマッパー無いのこれって?
0265nobodyさん2008/01/18(金) 21:10:28ID:???
普通についてるだろ。
どこみてんだ。
0266nobodyさん2008/01/18(金) 21:40:04ID:???
>>264
レス先走りすぎだ。

1.INSERT ... ON DUPLICATE KEY UPDATEしたいんですが、

2.直接SQL文発行しる!

3.標準でO/Rマッパー無いの?

煽るのならこの順番だろうがw 2番を飛ばすな
0267nobodyさん2008/01/18(金) 21:43:48ID:???
>>259
前どっかで同じことをいってたやつがいたな。
CakePHPか忘れたけど。
設計とか詳しくないからただの一つの意見だけど、
便利だからまぁいいんじゃないかなと思う。
疎結合っていう観点からはよろしくないのかもね。
Railsも同じ機能ついてたきがす
02682622008/01/18(金) 22:44:42ID:???
やっぱexecuteで発行するしかないんでしょうか。。
0269nobodyさん2008/01/19(土) 09:25:13ID:???
Cakeを「ケイク」と読んでるのは俺だけ・・・だよな・・・?
「ケーキPHP」より「ケイクPHP」のほうが言いやすい
0270nobodyさん2008/01/19(土) 10:53:43ID:???
英語の発音は、むしろ警句だろ?
0271nobodyさん2008/01/19(土) 11:44:58ID:???
おれもケイクって呼んでる
0272nobodyさん2008/01/19(土) 11:57:21ID:???
Helperに対して、コントローラから情報をわたすことって出来んの?
それともこれってなんか変な設計?
0273nobodyさん2008/01/19(土) 12:10:58ID:???
ビューにViewクラスを継承した独自のTestViewクラスを使用したい場合。

ファイル名:/app/views/test.php
<?php
class TestView extends View {
}
?>

あとは、コントローラで
var $view = 'Test';
と書く。


これって、公式な仕様だっけ?
0274nobodyさん2008/01/19(土) 15:04:12ID:???
ヘルパーでモデルのデータを参照したいときはどうすればいいわけ?

requestActionでURL形式でコントローラを呼び出して
コントローラ経由でモデルにアクセスしてデータ参照?
どう考えてもパフォーマンス悪すぎるだろ?

ヘルパーにコントローラからモデルデータを直接与える方法がないから
一旦コントローラからビューにモデルの値をsetして、
ビューがヘルパーの関数を呼び出すたびに引数にデータをセットするのか?

何でこんなに結合度が高いんだ?
0275nobodyさん2008/01/19(土) 16:45:02ID:???
>>274
ヘルパーごときがモデル様のデータを直接欲しいとか100年早いぜ。
欲しいならコントローラさんに話を通して、コントローラさんに必要な分を最初っから揃えてもらいな。
ってコンポーネントさんが言ってた。
0276nobodyさん2008/01/19(土) 17:32:36ID:???
<?php echo $html->input('Post/title', array('size' => '40'))?>

とか、

<?php foreach ($posts as $post): ?>
<tr>
<td><?php echo $post['Post']['id']; ?></td>
<td>
<?php echo $html->link($post['Post']['title'], "/posts/view/".$post['Post']['id']); ?>
</td>
<td><?php echo $post['Post']['created']; ?></td>
</tr>
<?php endforeach; ?>

とか、テーブル名(モデル名)が必ず付いて回るとか、ありえないんだけど
こういうものなの?

inputタグだとソース上から見えちゃうしーー
0277nobodyさん2008/01/19(土) 17:37:03ID:by/o8aKs
今だにcakeなんてやってるやついるんだな
日本人ならonigiriだと思うんだが
0278nobodyさん2008/01/19(土) 18:27:05ID:???
>>277
http://thumb.uploda.org/file/uporg1209264.jpg
0279nobodyさん2008/01/20(日) 00:56:33ID:???
>>275
> ヘルパーごときがモデル様のデータを直接欲しいとか100年早いぜ。
> 欲しいならコントローラさんに話を通して、コントローラさんに必要な分を最初っから揃えてもらいな。

それが簡単にはいかないんだよ。

ヘルパーがどのタイミングで作られるか知ってる?
コントローラのrenderの中でビューのrenderに処理がわたり
ビューがヘルパーを作っている。
つまりコントローラが動いているときは、ヘルパーはまだ生まれてないんだよ。

そしてヘルパーにはコントローラを知る方法が無い。
0280nobodyさん2008/01/20(日) 03:36:20ID:???
$this(ヘルパー)->view->controller->モデル
0281nobodyさん2008/01/20(日) 07:04:04ID:???
っていうかrequestActionってそんなに重いの?
ソースとかある?
0282nobodyさん2008/01/20(日) 16:34:25ID:???
1.2のバリデーションすげえええってワクテカしながら書き始めたはいいけど
配列まみれで思った以上に見づらい書きづらいなこれ
テキストエディタでちまちま書いてるからarrayのどっかおかしくてもパッと見わかんないし
0283nobodyさん2008/01/20(日) 18:12:40ID:???
>>281
そりゃ呼出しごとに、関数呼び出しの前に、
URL文字列から関数判断して、
コントローラを初期化して使えるようにしてから
読んでいるんだから遅いでしょ。
0284nobodyさん2008/01/21(月) 01:59:47ID:???
>>283
それは分かるけど、それって設計を変えるほどボトルネックになる事なの?
0285nobodyさん2008/01/21(月) 02:34:59ID:???
なる。
0286nobodyさん2008/01/21(月) 08:20:37ID:T79KO08k
requestActionについてのまとめ(英語だけど)
http://groups.google.com/group/cake-php/msg/39c1ed08657b19c1
何かヒントあるかも。
0287nobodyさん2008/01/21(月) 17:56:41ID:64B8kuvt
>>284

requestAction を 同じページで6箇所使ったら使い物にならないくらい重くなったよ。
できるだけ、使わないほうがいい。

それで僕は、設計を書き直しました。
0288nobodyさん2008/01/21(月) 18:30:58ID:???
もう少し具体的な例で説明しようかな?

Cake1.2にはConfigureというクラスがある。
これはいろんな場所(コントローラだったりビューだったり)で、
設定を読み書きできるクラス。読み書き先はファイルだ。

これの保存先をデータベースにして、普通のテーブルと同じように
設定できるようにする。そのとき、データベースを使ったConfigureを
どのように作るべきか?

普通に考えてConfigureの中身を変えるだけになるだろう。
つまり、Configureはグローバルに参照できObjectを継承しただけのクラス。
ゆえに、Configure内部で、App::import('Model', 'Configure');を
使って、内部でモデルのインスタンスを生成するしかない。

コンポーネントやヘルパーにしたり、
コントローラでモデルを渡したりと言ったことはしない。
クラスが直接モデルを扱う。

きっとこれが正しい設計だと思うが、反論はあるかな?
0289nobodyさん2008/01/21(月) 23:15:46ID:???
>>285-288
なるほど凄くよく分かった。
おまえら優しいな、thx
0290nobodyさん2008/01/22(火) 04:15:11ID:???
結局コントローラかビューかヘルパーの少なくとも一つはカオスになるのが確定なんだよな
そのへん全部ヘルパーに押し込むのが理想だけどめんどい
02912882008/01/22(火) 18:12:32ID:???
反論無いのかよw

こういうときは普通こうするだろ!って煽りまってたのに!

結局データベースを参照する設定クラスのようなものは
フレームワーク的なやり方ってないのね。

App::importで直接モデルを操作するしかないのか。

あとログもテーブルに格納するようにしようかなとか
思っているんだが、なんかこれも同じ道をたどりそうだ。
0292nobodyさん2008/01/22(火) 20:04:09ID:???
>>291
いや、だってrequestActionの重さ聞いただけだしなぁ
ちなみにどんな反論が想定内だったの?
0293nobodyさん2008/01/22(火) 20:51:13ID:???
>>291

聞く場所が2chだからな
メーリングリストで聞かんのかい?
0294nobodyさん2008/01/22(火) 21:16:39ID:???
トランザクションって掛けたいところで
Model->transactional = true;
にしてコミットしたいところで
Model->transactional = false;
にすればいいの?そんな簡単にはいかないか
0295nobodyさん2008/01/22(火) 21:29:30ID:???
トランザクションというのは、
一つ、または複数のモデルへの複数の操作を
一つにするものなのだから、
モデルにtransactionalなんてのが
あるのはおかしいと思いませんか?
0296nobodyさん2008/01/23(水) 02:25:43ID:???
全然おかしくない。
0297nobodyさん2008/01/23(水) 12:24:04ID:???
へぇ。おかしくないんだw

じゃあ、商品の在庫が入った商品データモデルと
注文されたときに作られる注文データモデル。

注文データを作って在庫を減らすという処理を一つのトランザクション
にするとして、いったい誰がどのモデルをコミットするんだい?

そして、そのモデルがコミットするべきだという理由は?
0298nobodyさん2008/01/23(水) 14:04:39ID:???
だからコントローラにtransactionalがあるんだろ
0299nobodyさん2008/01/23(水) 15:17:23ID:???
> だからコントローラにtransactionalがあるんだろ

無いよ?
0300nobodyさん2008/01/23(水) 15:55:49ID:???
無いなら
association使えって事だろう
0301nobodyさん2008/01/23(水) 16:07:07ID:z/2JwMmb
php暦 3年。mysql暦 2年。
はずかしながら comit とか考えたことないな。

データばぐらなくない?テキストファイル、CSVデータなら書き込んだりするとバグるときあるんで
ファイルロックはするけど。
0302nobodyさん2008/01/23(水) 16:18:03ID:???
3年やっててトランザクション意識した事ないとか恥を知れカス
0303nobodyさん2008/01/23(水) 16:18:45ID:???
2年やってトランザクションが何か知らない俺のほうがマシ
0304nobodyさん2008/01/23(水) 17:37:07ID:???
>>301
仕組みを理解してないと思われ。
データの整合性の問題。
0305nobodyさん2008/01/23(水) 19:01:29ID:???
そういうときのためのビヘイビアなんじゃねーの

使ったこと無いの勧めて悪いけど これでも使ってみれば
Transaction behavior | The Bakery, Everything CakePHP : Articles
http://bakery.cakephp.org/articles/view/transaction-behavior
0306nobodyさん2008/01/25(金) 20:52:16ID:???
ちょっと慣れて来るとviewやhelper書いてる時間の割合が相対的に増してくる
この作業がはてしなくつまらん…
0307nobodyさん2008/01/26(土) 01:02:57ID:???
1.2betaになってから、変数を宣言していないエラーの場合
極端に表示に時間がかかるようになってない?

俺が何か悪い事しているのかなぁ?
ちょっとコアいじってるし。
0308nobodyさん2008/01/26(土) 11:36:05ID:???
ワンタイムチケットとかないですか?
0309nobodyさん2008/01/26(土) 20:23:58ID:???
みんなAuthComponent使ってる?
1.2で標準搭載されたわりには(日本語)情報が少ないような気がするんだけど…

"1.2のAuthComponent" フォーラム - CakePHP Users in Japan
http://cakephp.jp/modules/newbb/viewtopic.php?topic_id=706&forum=14&post_id=1780
0310nobodyさん2008/01/26(土) 21:15:38ID:???
認証系、俺は結局自作してしまったな。
なんでだろ?特に使わない理由があったわけじゃないんだが、
認証=顧客管理機能の一部として、顧客管理機能を作っていたら
結果的に組み込んでしまったって感じ。

突き詰めると、データベースにあるキーにマッチするかどうかの判定だけだしね。
会員の登録、退会、パスワード再発行などの機能にくらべればたいした事じゃないし。
0311nobodyさん2008/01/26(土) 21:24:09ID:???
>会員の登録、退会、パスワード再発行などの機能
この辺もコンポーネントであったりするの?
0312nobodyさん2008/01/26(土) 21:28:19ID:???
あったら、俺の苦労は無駄になるw
0313nobodyさん2008/01/26(土) 21:38:31ID:???
rails使わないでcake使う理由って言語がphpであること以外にあるかな?
0314nobodyさん2008/01/26(土) 21:42:24ID:???
言語を抜かしてCakeの方が優れている点ってことか?
0315nobodyさん2008/01/26(土) 21:57:48ID:RSZTbZiz
>>307
俺の場合全てにおいて時間かかる。
$hoge = '';
ってやっとけばエラーでないからこうしとけばいいんじゃない?
0316nobodyさん2008/01/26(土) 22:02:53ID:???
>>315
やっぱりそうなんか。
pre-beta以前はこんなに時間がかからなかったんだけどねぇ。

> $hoge = '';
> ってやっとけばエラーでないからこうしとけばいいんじゃない?

俺は基本的に変数はちゃんと宣言するんだけど、
問題は間違って$hogeを$hageとか書いちゃった場合。
ケアミスバグなんだが、そのために数十秒無駄になるorz
0317nobodyさん2008/01/27(日) 00:37:27ID:???
いろいろ1.2の方が魅力的に見えるんだけど、1.2系はもう使えるモノになってるんすか?

普通のソフトだと、ベータテスト段階まで来たらバグ取りが主で、
大きな仕様変更は無いんじゃないかと思ってるんですけど、
Cakeはどうなんでしょう?
0318nobodyさん2008/01/27(日) 02:53:40ID:???
自分で確かめもしないやつには、誰も情報やらんよ。
0319nobodyさん2008/01/27(日) 13:39:39ID:HXUAcytA
>>315
自分はpre-beta 以前からも時間がかかった・・・。
やっぱりキャッシュ機能は必須なのかな。

>>317
目だったバグはないと思うよ。今使ってるけど。
しいて言えば html ヘルパーが フォームヘルパーになったりしていてバリデータエラーの
取得方法が 1.1 と変わっているのでそこが迷うくらい。
0320nobodyさん2008/01/27(日) 14:20:46ID:???
>>319
さっき落とした状態の1.2でやってみたんだけど、
変数宣言していなくても時間がかかることはなかった。
きっとどこかで何かをやっているのだろうがソースは会社なのでw

そういやバリデーション部分でひとつ不満が。
たとえば、1から5までの値を受け付けるバリデーションを作ったとして、
エラーメッセージを、「1から5まで数値を指定してください。」って
表示することはできないよね?
もちろん、1から5までという数値はパラメータで変更可能。メッセージも同じく。
0321nobodyさん2008/01/28(月) 01:30:21ID:???
app/config/routes.phpで
Router::connect('/', array('controller' => 'pages', 'action' => 'display'));
て設定してる時にクッキー消して(use_trans_sid onで)
http://myapp/?CAKEPHP=e233bd9c1facda8084d8ba2f2226eb60 でアクセスすると
Error: CAKEPHPe233bd9c1facda8084d8ba2f2226eb60Controller could not be found.
そんなコントローラーねえよって怒られちゃう
Router::connectの書き方誰か教えてくらさい
0322nobodyさん2008/01/28(月) 12:43:25ID:???
Router処理に来る前に、URLからセッションID部分を削除して
クッキーを使っている場合と同様のデータの持ち方に
変換すればいいと思ったがやり方しらねw
03233212008/01/28(月) 22:42:45ID:???
googleグループに嘘英語で質問投げてみた
0324nobodyさん2008/01/28(月) 23:44:38ID:???
乙。結果頼むw
0325316とか2008/01/30(水) 12:21:18ID:???
エラー発生時にやたらと時間がかかる場所を調べた。
どうやら、デバッグ機能としてエラー発生時に
わかる範囲すべての変数を出力しているみたい。
だからモデルとかヘルパーとかいろいろ使っているほど遅くなる。

/cake/lib/debugger.php の __outputの以下の行をコメントアウトすれば
時間かからないようになる。もちろんデバッガ機能は落ちるけど。

foreach ((array)$kontext as $var => $value) {
 $context[] = "\${$var}\t=\t" . $_this->exportVar($value, 1);
}
0326nobodyさん2008/01/31(木) 03:14:54ID:???
ならデバッグ切ればよくね?
0327nobodyさん2008/01/31(木) 16:10:58ID:????2BP(3000)
なんか出力するHTMLのソースの最初に改行が入っちゃうのは俺だけ?
beta使ってるんだけど、HTMLは良くても、rssの場合だとFFでエラーが出てしまう…
0328nobodyさん2008/01/31(木) 16:32:27ID:????2BP(3000)
すまん。ソース追いかけてたら自己解決。
あるhelperの最後の?>のあとに改行が入っていたせいで、それが出力されていたみたい。
0329nobodyさん2008/01/31(木) 17:50:39ID:???
だから閉じタグは書くなとあれほど
0330nobodyさん2008/01/31(木) 19:05:13ID:???
>>326
なんのためのデバッグだよw
03313212008/02/01(金) 03:13:35ID:???
経過
最新のbranchならfixされてるよ って開発者のレスがついて
最新のbranchにしたけど解決しなかった
んでそのまま放置されてる 今のところ以上
0332nobodyさん2008/02/01(金) 17:28:50ID:???
AJAXヘルパーって使いにくいよね。
基本的にclickで動作するように作られているからmouseoverで
動作させるためにはコアに手を入れなきゃいけなくなると思うんだけど。
■ このスレッドは過去ログ倉庫に格納されています