ユーザーに名前、メールアドレス、メッセージを尋ねるお問い合わせフォームがあります。
名前とメールアドレスはに保存されPerson
、メッセージはに保存されますMessage
Message
Person
私がそうするとき、そうに属します:
$this->Person->Message->saveAll($this->request->data)
..名前と電子メールアドレスはpeople
テーブルに挿入され、メッセージはテーブルに挿入されmessages
ますperson_id
。
ここまでは順調ですね。
ここで、私がやりたいのは、ユーザー(電子メールアドレスで識別される)が戻ってきて2番目のメッセージを送信した場合にPerson
更新および挿入される方法を提供することです。Message
これを行うために私が見つけた唯一の方法は、find onを実行Person
して、フォームに送信された電子メールアドレスを含むレコードがあるかどうかを確認することです。ある場合は、にarray_merge
追加するために使用し$this->request->data['Person']
ます。これは機能しますが、これはちょっとハックなやり方のように感じます。
これを行うためのより簡単な方法はありますか?