2009-08-27 10 views
1

に私は、CakePHP 1.2を使用し、それに行動を使用する方法を知っています。新しいプロジェクトにCakePHPの1.1を使用して行動は、CakePHP 1.1

(私はそれが愚かに聞こえるかもしれない知っているが、プロジェクトが1.1上に構築された私たちが持っている古いプロジェクトに非常によく似ています)。私は、CakePHP 1.1のモデルが行動を持っていなかったことを信じるようになった少しグーグル後

。 マニュアルにも参照が見つかりません。

これには方法がありますか?封じ込める行動をとっていいだろう。

乾杯

答えて

1

Decezeは正しいです。 Behaviorは1.2ブランチまで導入されていませんでした。私が私の初期の発達をしていたとき、私は行動を書いて、行動はまだ存在していないことに気付きました。あなたは、単にアップグレードできない場合

は、その後、app_modelを使用すると、あなたの最善の策だろう。私は、私が興味を持っている振る舞いをインポート/宣言することから始めます。次に、beforeSaves、afterSavesなどのすべてを調べ、適切な場所でその振る舞いのメソッドを明示的に呼び出します。

もう一度、全体的に1.2にアップグレードする方が簡単かもしれません。

2

行動は確かにintroduced in the 1.2 branchました。

私が行うための最善のことは、1.2にアプリを更新するために時間がかかることであろうと思います。 Cake 1.1のブランチは、これまでのところとてもひどく時代遅れです。実際の最大の変更点は、HtmlHelperの代わりにFormHelperを使用してフォームを作成することです。フォームがたくさんある場合は、多くの検索/置換が必要です。残りはかなりすぐに互換性があるはずです。

もちろん、beforeSaveのようなコールバックを使用して独自の「行動」をハックすることはできますが、それは価値があるとは思いません。