Почему возникает ошибка — Unable to link models: the primary key of app\models is null?

Всем здравствуйте! Пытаюсь связать между собой две таблицы Accept и Address. В контроллере Accept в экшене Create прописал следующее:
$model = new Accept();
$model->link('address', new Address());

Но происходит ошибка:
Unable to link models: the primary key of app\models\Accept is null.

Связь между таблицами установлена
модель Accept
public function getAddress(){
        return $this->hasOne(Address::className(), ['accept_id' => 'id']);
}

модель Address
public function getAccepts(){
         return $this->hasMany(Accept::className(), ['id' => 'accept_id']);
}

В ошибке говориться, что первичный ключ модели Accept имеет значение null, но по вроде бы по факту это не так, либо просто я не вижу очевидного
5d3f45f462b66573364424.png
  • Вопрос задан
  • 27 просмотров
Решения вопроса 1
slo_nik
@slo_nik Куратор тега Yii
Доброй ночи.
Думаю, что Вы не до конца поняли работу link();
Вот документация, а вот цитата из документации.
Примечание: Невозможно связать два свежесозданных объекта Active Record.

У Вас, как я понимаю, как раз этот случай.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы