と の 2 つのテーブルがuser
ありuserProfile
ます。Yii Active Record を使用して、両方のテーブルからレコードを削除したいと考えています。
以下は私のコードです:
public function actionDelete($id) {
$this->loadModel($id)->delete();
$model = $this->loadModel($id);
User::model()->deleteAll('user_id=:id', array(':id' => $model->user_id));
// if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser
if (!isset($_GET['ajax']))
$this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));
}
以下は、2 つのモデル間の関係です。
public function relations() {
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
'userProfiles' => array(self::HAS_MANY, 'UserProfile', 'user_id'),
);
}
public function relations() {
// NOTE: you may need to adjust the relation name and the related
// class name for the relations automatically generated below.
return array(
'user' => array(self::BELONGS_TO, 'User', 'user_id'),
);
}
ここで最初に userProfile テーブルからレコードを削除しています (正常に動作しています)。その後、user_id
そのモデルから を取得し、それを deleteAll メソッドに渡すことで、user
テーブルからレコードを削除しようとしていますが、エラーが返されerror 404 the requested page does not exist.
ます。
適切な削除方法ですか?またはどこが間違っているのですか?
ありがとう