@EVOSandru6

Что не так с HasOne классом в lumen?

Добрый день,

Хотел заюзать php8 на lumen проекте, апнул локально через apt-get install и столкнулся с проблемой при вызове:

User::has('profile')->get();

class User extends Model implements AuthenticatableContract, AuthorizableContract, JWTSubject
    public function profile()
    {
        return $this->hasOne(Profile::class);
    }
    ...
}


Class Illuminate\Database\Eloquent\Relations\HasOne contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (Illuminate\Contracts\Database\Eloquent\SupportsPartialRelations::getOneO
fManySubQuery)


Появилось предположение, что какая-то либа lumen из vendor еще не готова работать с php8

Сделал:

sudo apt-get purge php7.*
sudo apt-get purge php8.*
sudo apt-get autoclean
sudo apt-get autoremove


Установил снова 7.4 с уверенностью что вернувшись к исходному состоянию, все заработает корректно. Но проблема осталась.

sudo apt-get install -y php7.4 php7.4-common php7.4-fpm php7.4-cli php7.4-imagick php7.4-gd php7.4-intl; \
sudo apt-get install -y php7.4-pgsql; \
sudo apt-get install -y php7.4-zip; \
sudo apt-get install -y php7.4-xml; \
sudo apt-get install -y php7.4-mbstring;


php -v
PHP 7.4.18 (cli) (built: May 3 2021 11:27:06) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.18, Copyright (c), by Zend Technologies

Пробовал:

composer clearcache
rm -rf vendor composer.lock
composer install


Но тщетно.
  • Вопрос задан
  • 42 просмотра
Решения вопроса 1
@EVOSandru6 Автор вопроса
"kalnoy/nestedset": "^6.0"
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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