Почему возникает ошибка Call to a member function load() on null?

Собствено вот код

$model= new Watch();
        if($this->classes == 'serial'){
                $feild='id_serial';
                $model= $model->id_serial;}
        if($this->classes == 'film'){
                 $feild='id_film';
                $model= $model->id_film;}
        if($this->classes == 'mfilm'){
                $feild='id_mfilm';
                $model= $model->id_mfilm;}
        $wathCount= Watch::find()->where(['id_serial'=>$this->serial->id,'active'=>1])->count();
        $guest=false;
        if ($model->load(Yii::$app->request->post()))
        { ...


ругается на эту строчку if ($model->load(Yii::$app->request->post()))
  • Вопрос задан
  • 403 просмотра
Решения вопроса 1
qonand
@qonand
Software Engineer
потому что Вы перезаписываете переменную $model в трех местах
if($this->classes == 'serial'){
                $feild='id_serial';
                $model= $model->id_serial;} // тут
        if($this->classes == 'film'){
                 $feild='id_film';
                $model= $model->id_film;} // тут
        if($this->classes == 'mfilm'){
                $feild='id_mfilm';
                $model= $model->id_mfilm;} // тут


и на момент вызова $model->load() в переменной $model уже не объект класса ActiveRecord а другое значение не имеющее метода load()
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы