Laravel Eloquent Отношения 3 таблицы - PullRequest
0 голосов
/ 15 мая 2018

У меня есть три таблицы БД.Первая - это ПРОЕКТЫ, вторая - ПОЛЬЗОВАТЕЛИ, а третья - ДЕЯТЕЛЬНОСТЬ.Таблицы связаны между собой.В каждом проекте есть несколько пользователей, и под каждым пользователем есть действия.Подобный проект рассматривается здесь: Laravel Eloquent Relationships на 3 таблицы Мне нужен Laravel Controller.Загрузите только один конкретный проект с пользователями, где каждый пользователь может выполнять действия.

class Projekts extends Model
{
    public function user()
    {
        return $this->hasMany('App\User');
    }
}

class User extends Authenticatable
{
    public function activity()
    {
        return $this->hasMany('App\Activities');
    }
}

Ответы [ 2 ]

0 голосов
/ 17 мая 2018

Это работает для меня. Я хочу знать, есть ли более простой код.

    $form = $request->all();

    $newproject = \App\Projects::create( $form );
    $newproject_Id = $newproject->id;

    foreach ($form['items'] as $item) {
        $user= new \App\User;
            $user->projects_id = $novafaktura_Id;
            $user->nic = $item['name'];
            $user-> ...and other
        $user->save();
    }
0 голосов
/ 17 мая 2018

Используйте это:

$projekt = Projekts::with('user.activity')->find($id);
foreach($projekt->user as $user) {
    foreach($user->activity as $activity) {

    }
}
...