Элемент календаря обновления Python ExchangeLib Remder_is_set - PullRequest
1 голос
/ 08 мая 2019

Все,

Я новичок в Python, и у меня возникают проблемы с обновлением свойства reminder_is_set для элементов календаря.Я пытаюсь получить элементы календаря с этого момента и на 7 дней раньше и отключить напоминания.

Я могу получить элементы календаря в представлении просто отлично.Я могу перечислить предметы просто отлично.Я просто не могу понять, как обновить значение и сохранить каждый элемент.Я посмотрел примеры и увидел пример массового обновления, но не вижу, где устанавливается значение между извлечением и вызовом массового обновления.Любая помощь приветствуется.

calendar_items = account.calendar.view(start=startDate, end=currentDateTime)

calendar_ids = [(i.id, i.changekey) for i in calendar_items]

items_iter = account.fetch(ids=calendar_ids, only_fields='reminder_is_set')
for item in items_iter:
    item.reminder_is_set = False

updated_ids = account.bulk_update(items=[(i, ('reminder_is_set')) for i in calendar_items])

1 Ответ

0 голосов
/ 08 мая 2019

Основная проблема в том, что ваши изменения находятся в items_iter, но вы звоните bulk_update() с calendar_items, который не имеет изменений.

Вот пример, который должен работать:

update_pairs = []
for item in account.calendar\
        .view(start=startDate, end=currentDateTime)\
        .only('reminder_is_set'):
    if item.reminder_is_set:
        item.reminder_is_set = False
        update_pairs.append((item, ('reminder_is_set',)))

updated_ids = account.bulk_update(items=update_pairs)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...