Определите повторяющиеся события IceCube по идентификатору, если они произошли
Я пытаюсь использовать драгоценный камень ice_cube, чтобы настроить расписание повторяющихся смен. Я борюсь с тем, чтобы повторяющиеся события не были реальными примерами моей модели с идентификатором; Мне нужно иметь возможность ссылаться на каждое событие, чтобы связать его с методом shift_confirmation (детализируя такие вещи, как фактическое время окончания по сравнению с зарегистрированным временем окончания, оплачен ли сдвиг и т. Д.).
В чем я борюсь, так это в том случае, если я добавлю фактический экземпляр моей модели, а не повторяющийся экземпляр, в результате я получу оба экземпляра - экземпляр, на который можно сослаться с идентификатором, а также повторяющийся экземпляр.
Я подумал, могу ли я добавить исключение IceCube, которое удаляет сдвиг из графика повторения каждый раз, когда пользователь хочет его отредактировать (например, чтобы отметить его завершенным, оплаченным и т. Д.), И создать экземпляр моей модели, но это кажется очень нечисто - должен быть лучший путь
Есть ли какой-либо способ окончательно сослаться на конкретное событие в повторяющемся расписании ice_cube, чтобы я мог делать такие вещи, как пометить его как оплаченное (что было бы в связанной модели)?
2 ответа
Проверьте schedulable gem
, он позволяет вам сохранять event_occurrence в базе данных и позволяет вашему "расписанию" редактировать только будущие вхождения.
Когда вы создаете расписание, у графика есть идея, вероятно, вы можете использовать это в своей структуре.
Я просмотрел этот пост, потому что у меня похожая проблема.
У меня есть таблицы операций с начальным, конечным датумом и продолжительностью, а также связанное расписание таблиц со ссылкой "activity_id". Я не хотел сохранять строку to-yaml ice-cube, потому что я хочу добавить опцию "даты закрытия" в будущем в центральном месте без повторного анализа каждой записи.
Если вы покажете свою структуру, возможно, я смогу вам чем-то помочь.
С уважением, Сандер