/** * @return \yii\db\ActiveQuery */ public function getProducts() { return $this->hasMany(Product::className(), ['accountant_category_id' => 'id']); }
/** * Remove media action */ public function actionRemoveMedia() { $request = Yii::$app->request; $productMedia = ProductMedia::findOne(['product_id' => $request->get('product'), 'media_id' => $request->get('id')]); $productMedia->delete(); TagDependency::invalidate(Yii::$app->commonCache, Product::generateTagStatic($request->get('product'))); }
/** * Create action * @return array|string * @throws ErrorException */ public function actionCreate() { // request component $request = Yii::$app->request; // load models $models = $this->loadEditModels(); // save models $saved = false; if ($request->isPost) { $saved = $this->saveEditModels($models, $request->post()); } // create a component to display data $crudEdit = new $this->crudComponentsClass['edit'](['models' => $models, 'language' => Yii::$app->language, 'addAgain' => $request->get('add-again', true), 'saved' => $saved, 'uploadConfig' => $this->uploadConfig, 'dropDownList' => function ($id) { return $this->getDropDownList($id); }]); if ($request->get('product', false)) { $productMedia = new ProductMedia(['scenario' => 'insert']); var_dump($crudEdit->models); $productMedia->media_id = $crudEdit->models['main']->id; $productMedia->product_id = $request->get('product'); if (!$productMedia->save()) { var_dump($productMedia->errors); } TagDependency::invalidate(Yii::$app->commonCache, Product::generateTagStatic($request->get('product'))); } if ($request->isAjax) { // set response format Yii::$app->response->format = Response::FORMAT_JSON; return ['html' => $this->renderAjax('crud/edit/_contentBlock', ['crudEdit' => $crudEdit]), 'scripts' => $this->registerClientSideAjaxScript(), 'title' => $crudEdit->title]; } else { return $this->render('crud/edit/edit', ['crudEdit' => $crudEdit]); } }
/** * @return \yii\db\ActiveQuery */ public function getProducts() { return $this->hasMany(Product::className(), ['brand_id' => 'id']); }
/** * @return \yii\db\ActiveQuery */ public function getProduct() { return $this->hasOne(Product::className(), ['id' => 'product_id']); }
/** * @return \yii\db\ActiveQuery */ public function getProducts() { return $this->hasMany(Product::className(), ['alternative_product' => 'id']); }