Я пытаюсь сделать телевизор, где отображается текущее и следующее предстоящее шоу каждого канала. Я хочу сделать что-то вроде этого:Laravel 4 eloquent запрос для объединения данных из одной таблицы
<table class="table">
<thead>
<tr>
<th></th>
<th>Now Playing</th>
<th>Next Upcoming Show</th>
</tr>
</thead>
<tbody>
@foreach ($shows as $show)
<tr>
<td>
<strong>{{ $show->channel->name}}</strong></td>
<td><strong>{{ date('H:i', strtotime($show->now->start)) }}</strong>
{{ $show->now->title }}</td>
<td><strong>{{ date('H:i', strtotime($show->next->start)) }}</strong>
{{ $show->next->title }}</td>
</tr>
@endforeach
</tbody>
</table>
я получаю сейчас играете шоу, как это: $ Приведена = Показать :: с ('канала') -> где ('начало', '< = ', DB :: raw (' (NOW() - INTERVAL 15 SECOND) ')) -> где (' end ','> ', DB :: raw (' (NOW() + INTERVAL 15 SECOND) ')) -> orderBy ('start') -> get();
Я не могу получить следующее предстоящее шоу каждого канала в том же запросе. было бы здорово, если бы я мог что-то подобное для текущего шоу: $ show-> now-> start и для следующего шоу: $ show-> next-> start
любые идеи?
Мой дб:
Schema::create('channels', function(Blueprint $table) {
$table->increments('id');
$table->string('name', 200);
$table->timestamps();
});
Schema::create('shows', function(Blueprint $table) {
$table->increments('id');
$table->integer('channel_id');
$table->string('title', 255);
$table->text('description')->nullable();
$table->dateTime('start');
$table->dateTime('end');
});
Дополнительная информация о вашей структуре базы данных или даже необработанном запросе, который вы пытаетесь создать, наверняка поможет. – rmobis