yii2 has no declaration for the embedded -- Ошибка (валидация) Решение

ПРИМЕЧАНИЕ: для работы со вложенными документами намного удобнее оказывается использовать consultnn/yii2-mongodb-embedded.

В моём случае ошибка выглядела как-то так:

'app\models\es\PrimaryReport' has no declaration ('embedresearch_results()') for the embedded 'research_results'

Причина в том, что если у вас есть метод, описывающий вложенную сущность:

public function embedResearchResult()
{
	return $this->mapEmbedded('research_results', ResearchResult::className());
}

То его валидацию вы должны назначать не так:

[['research_results'], 'yii2tech\embedded\Validator']

а так:

[['ResearchResult'], 'yii2tech\embedded\Validator']

--так как именем поля считается в данном случае именно ResearchResult

Key Words for FKN + antitotal forum (CS VSU):