Реализовать интерфейс и черту в пользовательскую модель - PullRequest
0 голосов
/ 21 мая 2019

Я установил следующий пакет в свое приложение, чтобы пользователи могли отслеживать и отписываться от других пользователей.https://github.com/hypefactors/laravel-follow

В документации говорится:

Подготовка красноречивых моделей Чтобы позволить объекту следовать или следовать другим объектам, соответствующие модели должны реализовать интерфейс ииспользовать черту.

Вот как мы делаем это для пользователя и компании, где пользователь может следить за компанией, а за компанией можно следить:

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Hypefactors\Laravel\Follow\CanFollow;
use Hypefactors\Laravel\Follow\Contracts\CanFollowContract;

class User extends Model implements CanFollowContract
{
    use CanFollow;
}

Однако моя пользовательская модель выглядит следующим образом:

<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;



class User extends Authenticatable
{

Я пробовал включать файлы различными способами, но безуспешно.Я предполагаю, что это как-то связано с тем, что мой класс модели пользователя выглядит следующим образом: класс Пользователь расширяет Authenticatable , а не это: класс Пользователь расширяет модель Может кто-нибудь указать мне правильное направление?

Если я сделаю это:

<?php

namespace App;

use Illuminate\Notifications\Notifiable;
use Illuminate\Contracts\Auth\MustVerifyEmail;
use Illuminate\Foundation\Auth\User as Authenticatable;

use Hypefactors\Laravel\Follow\CanFollow;
use Hypefactors\Laravel\Follow\Contracts\CanFollowContract;


class User extends Authenticatable implements CanFollowContract
{
    use Notifiable;
    use Uuids;
    use CanFollow;

Я получу следующую ошибку:

Черта 'Hypefactors \ Laravel \ Follow \ CanFollow' не найдена

1 Ответ

0 голосов
/ 21 мая 2019

Я решил изменить пакет на это: https://github.com/overtrue/laravel-follow, который работал хорошо, как и ожидалось.

@ ceejayoz Спасибо за ваши предложения

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...