2017-08-23 2 views
0

私が答えを求めてグーグルで行っているにもかかわらず、この質問に対する回答が見つからないので、私はここでそれを尋ねなければなりません。AfterSaveに関するCakePHP 2の仮定

私はafterSaveメソッド内で[ 'ID'] [エイリアス>の$ this - ]私はいつもの$ this - >データにID(PK列)を持っていることを前提とすることはできますか?

もし私がこれを仮定することができないなら、afterSaveはPKを与えないでしょうか?

ありがとうございました。

+0

"id"という名前の単一の自動インクリメントプライマリキーに対してのみ存在します。複合キーまたは自動インクリメントキーが設定されていない可能性があります。 – cgTag

答えて

3

afterSave()$this->idを常に使用する場合は、afterSaveとして保存されます。保存が成功した場合、つまりデータベースに行が挿入または更新された場合のみ呼び出されます。

あなたがlook at the codesave()ためModel.phpにあなたは保存が成功しなかった場合afterSaveコールバックの前にメソッドの戻りが開始されたことがわかります場合。

+0

ケーキ2は複合キーをサポートしていませんか? – cgTag

+1

"afterSave()では、afterSaveとして常に設定されている$ this-> idを使用します。保存が成功した場合、つまりデータベースに行が挿入または更新された場合のみ呼び出されます。これは、$ this-> idが成功したセーブに設定されていることを確認したかったのです。私はあなたに感謝します。 – NotJustin

関連する問題