Relations through via() problem


I am rewriting one of my projects from Yii to Yii2 and suddenly run into trouble with complex relations. In yii1, i can make chain relations inside same AR model with ‘through’ option. In yii2 I find this functionality realized with via() method in relation definition.

However, after rewriting relations I got

[color="#FF0000"]Getting unknown property: app\modules\contractors\models\Tenders::groupId[/color]

For some reason Yii tried to find link-field (groupId) inside primary model (Tenders). And I expected from Yii to get it from relation model (TendersDirections) that should be linked through via() method.

If i call CompaniesDirections or Directions relations directly, everything works nice.

At this point I try to understand is Yii2 support long chains through via() links inside model, or this is bug.

Tenders::find()->with(['companies'])->where(['id' => array_keys($selection)])->all();

 public function getDirections()


        return $this->hasMany(TendersDirections::className(), ['tenderId' => 'id']);


    public function getCompaniesDirections()


        return $this->hasMany(CompaniesDirections::className(), ['groupId' => 'groupId'])



    public function getCompanies()


        return $this->hasMany(Companies::className(), ['id' => 'companyId'])