私はいくつかのコードのアドバイスを求めています。互いに依存している 2 つのモデルがあります。モデルの 1 つが削除されたときに、データベース内の両方のレコードが削除されていることを確認したいと考えています。
親が削除された場合、外部キーを使用してこれを一方向で処理します。しかし、これらの行は両方とも互いに依存しているため、子で同じ機能を実行する必要があります。
子モデルでは、delete メソッドをオーバーロードしたので、次のようになります。
public function delete() {
$cameraTransaction = $this->dbConnection->beginTransaction();
try
{
$this->ftpuser->delete();
if($this->beforeDelete())
{
$result=$this->deleteByPk($this->getPrimaryKey())>0;
$this->afterDelete();
}
$cameraTransaction->commit();
}
catch(Exception $e) // an exception is raised if a query fails
{
$cameraTransaction->rollBack();
}
}
私はテストしましたが、これはうまくいくようです。専門家/第一人者が私が正しいことをしたかどうかを確認できるかどうか疑問に思いました:)
ありがとう
アラン