Получите строки по колонке в Ларавеле многих ко многим отношениямPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Получите строки по колонке в Ларавеле многих ко многим отношениям

Сообщение Anonymous »

laravel Многие ко многим отношениям

Привет, я застрял, пытаясь получить данные из базы данных на недели.
У меня есть следующая таблица (многие ко многим отношениям) < /p>
  • Prontine: id, plan_id, user_id .
  • Упражнение: ID, Имя, Описание, Изображение.
  • examer_routine: id, rootine_id, genery_id, неделя, день.
отношения < /strong> < /p>

Prontine < /p>

public function exercises() {
return $this->belongsToMany(Exercise::class)->withPivot('week', 'day', 'completed')->orderBy('week','asc');;
}
< /code>

Упражнение < /p>

public function routines() {
return $this->belongsToMany(Routine::class)->withPivot('week', 'day', 'completed');
}
< /code>

Я хотел бы получить все строки к неделе, как это. < /p>

Json example:
{
"week": [
1: {
"exercises": [
{
"name": "Abs"
}
]
},
2: {
...
}
]

}
< /code>

Я уже пробовал это < /p>

if(!empty($routine)) {

foreach ($routine->exercises as $exercise) {
$week = $exercise->pivot->week;

if($week == $previous_week) {
array_push($this->weeks, $exercise->pivot->week);
} else {
array_push($this->weeks, [
$exercise->pivot->week => $exercise->pivot->week
]);
}

$previous_week = $exercise->pivot->week;

}

// dd($this->weeks);

// return DB::table('exercise_routine')->where('routine_id',$routine->id)->max('week');
}
< /code>

Объяснение < /strong> < /p>

Таблица упражнения_routine имеет недельный номер для разделения упражнений по неделю .
Мне нужно создать массив, и если неделя составляет 1, то нажмите на массив 1, если следующий составляет 1, нажмите в одном и том же массиве. Если следующее 2 или другое, просто нажмите, но в номере 2. < /P>

Я не уверен, что вы понимаете, что я имею в виду, это просто пытается пройти путь Чтобы сделать это. < /p>

заранее спасибо. < /p>

Подробнее здесь: https://stackoverflow.com/questions/617 ... lationship
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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