В чем ошибка с повидением?

пытаюсь создать свое первое поведение
собственно вот

use backend\modules\menus\behavior\MenuFrontendBehavior;
    
    class Firmcat extends \yii\db\ActiveRecord
    {
        public function behaviors()
        {
            return [
                [
                    [
                        'class' => SluggableBehavior::className(),
                        'attribute' => 'title',
                        'slugAttribute' => 'slug'
                    ],
                    'MenuFrontendBehavior' => [
                        'class' => MenuFrontendBehavior::className(),
                    ]
                 ]
            ];
        }


вот так пытаюсь получить его в контролере модуля

class Firmcat extends \yii\db\ActiveRecord
    {
        public function behaviors()
        {
            return [
                [
                    [
                        'class' => SluggableBehavior::className(),
                        'attribute' => 'title',
                        'slugAttribute' => 'slug'
                    ],
                    'MenuFrontendBehaviors' => [
                        'class' => MenuFrontendBehavior::className(),
                        //'model' => 'yes',
                        //'prop2' => 'value2',* /
                    ]
                 ]
            ];
        }


получаю такую ошибку

Invalid Configuration – yii\base\InvalidConfigException
Object configuration must be an array containing a "class" element.


Объясните пожалуйста, что я делаю не так ?
  • Вопрос задан
  • 799 просмотров
Решения вопроса 2
Навскидку могу предположить, что у вас слишком много массивов во вложенности
return [
                [
                 .....
                ]
]

надо
return [
                 .....
]
Ответ написан
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
вот так пытаюсь получить его в контролере модуля
Это модель а не контролер

Если дали имя для 'MenuFrontendBehaviors' то и для Sluggable дайте, например:
public function behaviors()
{
return [ 
  'slug' => [
                        'class' => SluggableBehavior::className(),
                        'attribute' => 'title',
                        'slugAttribute' => 'slug'
   ],
   'menu' => [
                        'class' => MenuFrontendBehavior::className(),
                        //'model' => 'yes',
                        //'prop2' => 'value2',* /
   ]
]
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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