Laravel: вставка «многие ко многим»Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Laravel: вставка «многие ко многим»

Сообщение Anonymous »


У меня есть две модели: Пользователь и Команда Связь между ними такая: ManyToMany:

В Пользователе:

публичная функция teamMembers(){ return $this->belongsToMany('App\Team')->withPivot('id');; } И в Команда:

публичная функция teamMembers(){ return $this->belongsToMany('App\User')->withPivot('id');; } Теперь я хочу добавить пользователей в определенную команду. Итак, имя сводной таблицы — team_user.

Теперь данные, которые я хочу вставить в сводную таблицу:

массив:4 [▼ "_token" => "mlwoAgCQYals1N1s2lNa4U5OTgtMNHh9LUhNGrWh" "team_id" => "1" "members_id" => массив:3 [▼ 0 => "2" 1 => "3" 2 => "4" ] "статус" => "1" ] Что я делаю в своем контроллере:

$team_id = $request->get("team_id"); $team = \App\Team::findOrFail($team_id); foreach ($request->get('members_id') as $key => $value) { $team->teamMembers()->attach($team); $команда->сохранить(); } Но он вставляет только одну запись, я имею в виду team_id и первый member_id. Я хочу, чтобы он создавал по одной записи для каждого члена массива members_id. Как я это сделаю?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»