Yii - data exists update else insert

1010 ワード

次の文はコードノートで、もしあなたを助けることができるならば、光栄に存じます!
テーブル構造:
CREATE TABLE `tb_user` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '    ID',
  `name` varchar(100) NOT NULL DEFAULT '' COMMENT '  ',
  `age` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '  ',
  `email` varchar(100) NOT NULL DEFAULT '' COMMENT '  ',
  PRIMARY KEY (`id`),
  UNIQUE KEY `idx_name` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='   '

コードリスト:
public function actionAddUpdate() {
    $user = new User;
    $user->name = 'lee';
    $user->age = 30;
    $user->email = '[email protected]';
    $row = false;
    try {
        //     
        $row = $user->save();
    } catch (Exception $ex) {
        //      ,     
        $user->isNewRecord = false;
        $user->id = 1;
        $row = $user->save();
    }
    var_dump($row);
}
ヒント:tb_userテーブルはModelファイルを生成する必要があります.