/** * @inheritdoc */ public function afterSave($insert, $changedAttributes) { TagPost::deleteAll(['post_id' => $this->id]); if (is_array($this->tags) && !empty($this->tags)) { $values = []; foreach ($this->tags as $id) { $values[] = [$this->id, $id]; } self::getDb()->createCommand()->batchInsert(TagPost::tableName(), ['post_id', 'tag_id'], $values)->execute(); } parent::afterSave($insert, $changedAttributes); }
public function getTagPost() { return $this->hasMany(Tags::className(), ['id' => 'tag_id'])->viaTable(TagPost::tableName(), ['post_id' => 'id']); }