В настоящее время я работаю над приложением календаря, похожим на календарь Google, где вы можете забронировать повторяющиеся события, иметь «слоты» (выделенное время, когда другие люди могут записаться на встречу в вашем календаре) и другие подобные вещи.
Я ищу некоторые ресурсы или руководства о том, как правильно построить эту модель данных. У нынешней модели есть некоторые серьезные проблемы, которые, я чувствую, уже решены, и я заинтересован в поиске этих решений.
Наше текущее решение:
Назначение - содержит всю базовую информацию о назначении
Событие назначения - связано с назначением, имеет место для каждого повторяющегося события
Участник встречи - связанный с назначением, держит, кто посещает встречу.
Некоторые проблемы с этим:
Мы должны удалить и повторносоздавать все вхождения, когда кто-то редактирует одно событие в повторяющемся событии
Участник привязан к встрече, поэтому отдельные события не могут иметь разных участников. Если вы редактируете участника, он создает исключение (которое становится его собственным назначением)
и множество других проблем. Мне бы хотелось многое изменить, и я хочу попытаться найти правильный путь.
Спасибо за помощь !!