Почему выбивает ошибку Call to a member function isAttributeRequired() on array?

Добрый день! Подскажите, что за ошибка Call to a member function isAttributeRequired() on array?
View
$form = ActiveForm::begin();
        echo $form->field($modelPagesOnList, 'state_22')->dropDownList([
            '0' => 'Активный',
            '1' => 'Отключен',
            '2'=>'Удален'
        ]);
        ActiveForm::end();

Модель
class PagesOnList extends Model
{
    public $state_22;

    public function rules()
    {
        return [
            [['state_22'], 'required'],
        ];
    }
    public function attributeLabels()
    {
        return array(
            'state_22'=>$this->state_22
        );
    }
}

Контроллер
$modelPagesOnList = new PagesOnList();
        $modelPagesOnList->attributes = Yii::$app->request->post('PagesOnList');
        print_r($modelPagesOnList->state_22);
 ....
return $this->render('index', ['modelPagesOnList'=>$modelPagesOnList]);
  • Вопрос задан
  • 112 просмотров
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
public function attributeLabels()
    {
        return array(
            'state_22'=>$this->state_22
        );
    }

Вы в label хотите записать значение? Это адская штука.

А вот тут:
$modelPagesOnList->attributes = Yii::$app->request->post('PagesOnList');

Я там понимаю Вы хотели сделать так?
$modelPagesOnList->load(Yii::$app->request->post('PagesOnList'))
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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