$query->andFilterWhere(['like', 'genres', $this->genres])
            ->andFilterWhere(['like', 'tags', $this->tags])
            ->andFilterWhere(['like', 'joint_authors', $this->joint_authors])
            ->andFilterWhere(['like', 'publishing', $this->publishing]);  if(is_array($this->genres) and !empty($this->genres)){
    $genres_query = ['or'];
    foreach($this->genres as $one){
        $genres_query[] = ['like', 'genres', $one];
    }
}
$query->andFilterWhere($genres_query)