/** * проверяем изменения в лигах */ private function checkLeagues() { $array_identical = false; if (count($this->eventLeagues) != count($this->league_ids)) { $array_identical = false; } else { foreach ($this->eventLeagues as $model1) { //echo'<pre>';print_r($model_spec);echo'</pre>';//die; $array_identical = false; foreach ($this->league_ids as $key => $value) { $array_identical = false; if ($model1->leagueid == $value) { $array_identical = true; } if ($array_identical === false) { break; } } if ($array_identical === false) { break; } } } //echo'<pre>';var_dump($array_identical);echo'</pre>';die; if ($array_identical == false) { foreach ($this->eventLeagues as $model1) { $model1->delete(); } foreach ($this->league_ids as $value) { $model_n = new PokerEventLeague(); $model_n->event_id = $this->id; $model_n->leagueid = $value; $model_n->save(); } } }
/** * @return \yii\db\ActiveQuery */ public function getPokerEventLeagues() { return $this->hasMany(PokerEventLeague::className(), ['leagueid' => 'leagueid']); }
/** * @return \yii\db\ActiveQuery */ public function getEventLeaguesList() { return $this->hasMany(PokerEventLeague::className(), ['event_id' => 'id'])->with('league'); }