2012-05-17 2 views
3

Я бы хотел, чтобы мои пользователи настраивали расписание для своих событий. Это может быть один день, или для удобства я бы хотел, чтобы они указывали повторное событие (похожее на встречу Outlook).Как хранить и запрашивать события повторяющейся даты с помощью манго?

Хранение одного дня будет довольно простым, но как я могу сохранить и запросить повторное событие? Мне не нужно делать раз, поскольку я просто буду хранить это отдельно, и если бы они нуждались в другом времени, я бы просто создал их еще одно событие. Так нет: Каждую среду в 5 и в четверг на 3.

Примеры:

Каждый Пн, Вт, Ср, Чт, Пт, каждую неделю

Каждый ср каждую неделю

Каждый второй вторник от месяца

Я спросил об этом несколько лет назад: How can I store and query schedule data?, но он использовал SQL-решение (SQL Server). Я хочу использовать Mongo, хотя порт в порядке.

ответ

2

Как насчет сохранения исходной даты и информации о повторении? Это неограниченное поле для экспериментов, и вы можете придумать «повторяющийся формат событий». Например:

event : { 
    date: 17 May 2012 22.45, 
    recurring: "+2d" # meaning, every second day after the date 
} 
+0

Это своего рода подход, который я использую в своем проекте монго; Использование идентификаторов, с которыми можно сопоставить. Вы можете фильтровать в определенной степени, а затем это может быть связано с фильтрацией на стороне клиента. В python я использую модуль dateutil для восстановления объекта повторяющейся даты. – jdi

+0

Итак, можете ли вы дать некоторые основные вопросы? Я всего лишь манго newb. Как я буду показывать на следующей неделе, какие события подходят? – rball

+0

Вы не можете сделать это через Mongo. Это бизнес-логика, которая должна находиться в приложении, а не в базе данных. –

 Смежные вопросы

  • Нет связанных вопросов^_^