Теперь это работает отлично.

ользуюOctoberCMS основанный на Laravel.

Я пытаюсь переопределитьПлагин пользователей onRegister() функция.

Предыдущий ответ помог мне расширить плагин.

Я хочу ограничить имена пользователей буквенно-цифровыми только сalpha_dash и ограничить до 50 символов.

Оригинальная функция вAccount.php

public function onRegister()
{
...
    if ($this->loginAttribute() == UserSettings::LOGIN_USERNAME) {
        $rules['username'] = 'required|between:2,255';
    }

Моя переопределение

Пользователь События документыhttps://github.com/rainlab/user-plugin#events

public function boot() {

    \RainLab\User\Models\User::extend(function($model) {

        $model->bindEvent('model.beforeUpdate', function() use ($model) {

            # User Register
            \Event::listen('rainlab.user.register', function($user, $data) {

                if ($this->loginAttribute() == UserSettings::LOGIN_USERNAME) {
                    $rules['username'] = 'required|alpha_dash|between:2,50';
                }

            });
        }); 
    }); 
}

ошибка

"Call to undefined method [loginAttribute]"

Если я удаляю оператор if и loginAttribute и использую только $ rules ['username'], я все равно могу регистрировать имена с не алфавитно-цифровыми символами.

Я смог расширить новый код с помощью этого, но не переопределить существующий код.

Ответы на вопрос(1)

Ваш ответ на вопрос