Как выбирать фильмы за указанный день?

Есть вот такой datepicker на сайте, в котором пользователь должен выбирать дату и ему должны отображаться фильмы этой даты (это уже решенная задача):
bce8b49f88af48f6b0a8f59a627e911b.png

База: Есть таблица films в которой есть два поля start_date и end_date. Один фильм может идти с 21 числа по 28 а другой может идти с 24 по 29. Значит, 28 будут идти два фильма а 29, 22, 21 один и т.д.
df9ce61ccb44428d8e12149d97684881.png

И на каждый день в одно и тоже время у него запланировано время проведения, за это отвечает таблица time_film с полями id | start | end | price | films_id.
0f6023987b684faf8c72513acfbb2bac.png

Связь между films и time_film = OneToMany.
Нужны идеи как оптимальнее решить эту задачу. В голове есть идеи наподобие:
$timing_films = Film::where([
            ['status', 0],
            ['end_date', '>=', date('m/d/Y')]
        ])->get();
// достаем все фильмы которые будут играть

Вот так доставать фильмы и потом на front-end их сортировать на каждый день и отображать.
  • Вопрос задан
  • 230 просмотров
Решения вопроса 1
DevMan
@DevMan
пройтись по фильмам циклом и построить нужный массив по датам.
пример если я правильно понял о чем вопрос.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы