/** * Delete attribute action * @throws BadRequestHttpException */ public function actionDeleteAttribute() { $request = Yii::$app->request; $params = $request->post(); if (isset($params['id'])) { $ids = [$params['id']]; } elseif (isset($params['ids'])) { $ids = explode('|', $params['ids']); } else { throw new BadRequestHttpException('Missing parameter'); } $delete = []; foreach ($ids as $id) { if ($id == '') { continue; } $variants = VariantAttribute::find()->where(['attribute_id' => $id])->joinWith('variant')->all(); foreach ($variants as $variant) { //var_dump($variant);die(); if ($variant->variant->product == $request->get('product')) { } $delete[] = $variant->variant->id; } } Variant::deleteAll(['id' => $delete]); TagDependency::invalidate(Yii::$app->commonCache, Product::generateTagStatic($request->get('product'))); }