Выберите все события с помощью Event->Schedule->Date между датами начала и окончания в CakePHP.Php

Кемеровские программисты php общаются здесь
Anonymous
Выберите все события с помощью Event->Schedule->Date между датами начала и окончания в CakePHP.

Сообщение Anonymous »

Пытаюсь понять, как создать запрос в CakePHP, в котором я могу выбрать все события, происходящие между датами X и Y (введенными пользователем датами).

проблема заключается в том, что у события нет дат в таблице.

Event hasMany Schedule
Schedule belongsTo Event

Schedule hasMany Date
Date belongsTo Schedule

  • Events table: сведения о событии — название, место, описание... и т. д.
  • Schedules table: дата начала и окончания с возможностью повтора.
  • Dates table: фактические даты события, созданные на основе данных в расписаниях.
Итак, мне действительно нужно выберите любые события, у которых есть хотя бы одна запись даты между датами X и Y.

Мне также нужно иметь возможность отображать даты с данными о событии.



Изменить (ПЕРЕСМОТРЕННО):

Я пробовал это, но, похоже, события извлекаются независимо от даты, но информация о дате извлекается только в том случае, если дата попадает в диапазон:

$this->Event->Behaviors->attach('Containable');
$events = $this->Event->find('all', array(
'limit'=>5,
'order'=>'Event.created DESC',
'contain' => array(
'Schedule' => array(
'fields'=>array(),
'Date' => array(
'conditions'=>array(
'start >=' => $start_date,
'start =' => $qOpts['start'],
'Date.start

Подробнее здесь: https://stackoverflow.com/questions/637 ... es-in-cake

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