контроллер модели Laravel извлекает данные - PullRequest
0 голосов
/ 08 октября 2019

Я новичок в laravel, и у меня были трудные времена для красноречивого ORM, мне нравится извлекать Favourite элементов из таблицы с определенным идентификатором пользователя, но, похоже, я не нахожу способ правильно отобразить данные.

Я ссылаюсь и копирую код любимой модели из здесь

Модель: Фаворит

class Favourite extends BaseModel
{
    public function favouritable()
    {
        return $this->morphTo();
    }
}

Модель: Курс

public function favourites()
{
    return $this->morphMany(Favourite::class, 'favouritable');
}


public function myFavourite()
{
    return $this->favourites()->where('favor_user', '=', auth()->user()->id);
}

Контроллер: FavouriteController @ index

public function index()
{
    $course = new Course();
    $myfavs = $course->myFavourite();

    //dd($myfavs);

    $this->vdata(compact('myfavs'));

    return view('front.favorites', $this->vdata);
}

В режиме просмотра, но возвращаются пустые / пустые данные:

@foreach($myfavs as $myfav)
    {{ $myfav->$course_name }}
@endforeach

Когда я dd($myfavs), он отображает довольно много данных, которые я не смог 't найти данные, которые хранятся в таблице избранного.

1 Ответ

0 голосов
/ 08 октября 2019

Я думаю, вы добавили условия, но забыли получить результаты одним из методов.

Попробуйте:

$myfavs = $course->myFavourite()->get();

или:

$myfavs = $course->myFavourite()->take(<N>)->get;

или

::all()

и т. Д. взгляните на: https://laravel.com/docs/5.8/eloquent#retrieving-models

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