SluggableBehavior bug ?

В общем нужно изменить slug перед сохранением в БД. Пишу




[

    'class' => SluggableBehavior::className(),

    'attribute' => 'name',

    'slugAttribute' => 'slug',

    // 'immutable' => true,

    // 'ensureUnique'=>true,

    'value' => function( $event ) {

        return 'test';

    },

],



В итоге получаю то что было в name, а должно быть ‘test’ :unsure:

Из доки http://www.yiiframework.com/doc-2.0/yii-behaviors-sluggablebehavior.html#$value-detail

The value that will be used as a slug. This can be an anonymous function or an arbitrary value. If the former, the return value of the function will be used as a slug. The signature of the function should be as follows,


function ($event)

{

    // return slug

}

Должно ведь работать, а оно не работает :(

Сам спросил, сам и отвечаю


[

    'class' => SluggableBehavior::className(),

    // 'attribute' => 'name', Комментим строку, иначе не работает

    // 'slugAttribute' => 'slug',

    // 'immutable' => true,

    // 'ensureUnique'=>true,

    'value' => function( $event ) {

        if(!empty($event->sender->slug))

        {

            return $event->sender->slug;

        }

        return \yii\helpers\Inflector::slug($event->sender->name);

    },

],

Может кому еще пригодится :)