Получение данных между таблицами (Pivot Laravel 5.5) - PullRequest
0 голосов
/ 11 июня 2018

У меня есть две таблицы: категория и действие, в которых я создал сводную таблицу activity_categories, в которой сохраняются код действия и идентификатор_действия.

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

Я пытался с циклом, но не мог заставить его работать.Мой код, как показано ниже:

// Модель деятельности

public function category()
{
    return $this->belongsToMany('App\Category','activity_categories');
}

// controller

$activities = Activity::all();

    foreach ($activities as $activity){
        $fun = Activity::all()->where($activity->category->first()->name, 'fun');
        dd($fun);
    }
    return view('layout.home', compact('activities'));

Если я пытаюсь dd, он возвращает ноль, хотя у меня есть многочисленные данныев этой категории.Обратите внимание, что деятельность может принадлежать многим категориям

1 Ответ

0 голосов
/ 11 июня 2018

Необходимо определить обратную связь в модели Category:

public function activity()
{
    return $this->belongsToMany('App\Activity', 'activity_categories');
}

Затем используйте ее следующим образом:

$category = Category::find($id);
$activities = $category->activity;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...