複数テーブル(hasmany)のsave [CakePHP]

7364 回閲覧 このエントリーをはてなブックマークする この記事のブックマークユーザー 永続的リンク2008/03/01 18:30:14 カテゴリ: CakePHP
スポンサード リンク

CakePHP


一つのアクションで関連づけされたテーブル(Aiueoモデル hasmany Irohaモデルという関係)を同時にsaveする時のメモ。


以下のように、複数のテーブルにsaveが出来ると思ってたら、Irohaモデルの外部キーを自動で登録してくれなかった。

class AiueosController extends AppController{
    /*
     * 省略
     */
    $data = array(
        'Aiueo' => array(
            'name' => $this->data['Aiueo']['name'],
            'tel' => $this->data['Aiueo']['tel'],
            
        ),
        'Iroha' => array(
            'name' => $this->data['Iroha']['name'],
        )
    );
    
    $this->Aiueo->save($data)
}





以下のようにしてsaveした。

class AiueosController extends AppController{
       /*
        * 省略
        */

        $aiueo_data = array(
            'Aiueo' => array(
                'name' => $this->data['Aiueo']['name'],
                'tel' => $this->data['Aiueo']['tel'],
            )
        );
        $iroha_data = array(
            'Iroha' => array(
                'name' => $this->data['Iroha']['name'],
            )
        );
        
        //登録処理
        if($this->Aiueo->save($aiueo_data)){
          //今登録したAiueoのID取得
            $Iroha_data['Iroha']['aiueo_id'] = $this->Aiueo->getLastInsertId();
            $this->Iroha->save($iroha_data);
        }
}


 →ツイッターのフォローはこちら
スポンサード リンク
         

関連記事

↑ページ上部へ

アクセスカウンター

今日 : 23 昨日 : 87

ブログ内容

主にウェブ関係のことを書いてます。たまにブレイクダンスとか他のことも書いています。

プロフィール

MICK

MICKです。

1983年1月24日生まれ。ウェブの世界にいるのは、偶然のようで必然なのかも。

好きなこと :
 挑戦すること。物事に没頭すること。勉強すること。
嫌いなこと :
 自慢話を聞くこと。人の悪口を言うこと。

運営サイト

      

カテゴリ一覧

サイト広告

オススメの書籍とか

感想

紹介

色々

最近のコメント

最新記事

注目記事

人気記事

最近の人気記事

人気の記事

関連サイト

運営サイト

色々

最近のトラックバック