Ошибка Laravel "Объявление модели / имя_модели должно быть совместимо с Illuminate \ Database \ Eloquent \ Model" - PullRequest
0 голосов
/ 29 января 2019

Я столкнулся со странной проблемой, связанной с применением Laravel.после обновления композитора на моем производственном сервере я получаю эту ошибку.Моя страница входа показывает нормально, и когда я ввожу учетные данные, она отображает эту ошибку, либо учетные данные неправильные или правильные, всегда отображается одна и та же ошибка.

Ошибка

Декларация приложения \Модели \ User :: update ($ a_data = NULL, $ a_conditions = NULL) должны быть совместимы с Illuminate \ Database \ Eloquent \ Model :: update (массив $ attribute = Array, массив $ options = Array)

Я искал в интернете, но ничего не нашел.Пожалуйста, помогите.буду благодарен.

1 Ответ

0 голосов
/ 29 января 2019

При переопределении метода из родительского класса - сигнатура метода должна быть точно такой же с точки зрения параметров и их типов

В родительском классе как $attributes, так и$options имеет тип array, поэтому вы также должны установить их в своем классе

namespace App\Models;

class User extends \Illuminate\Database\Eloquent\Model {
    ...
    public function update(array $attributes = [], array $options = []) {
       // ... your implementation
       return parent::update($attributes, $options);
    }
    ...
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...