yii2 has no declaration for the embedded -- Ошибка (валидация) Решение
Primary tabs
ПРИМЕЧАНИЕ: для работы со вложенными документами намного удобнее оказывается использовать 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
- Log in to post comments
- 1766 reads