首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Python ExchangeLib更新日历项reminder_is_set

Python ExchangeLib更新日历项reminder_is_set
EN

Stack Overflow用户
提问于 2019-05-08 19:46:36
回答 1查看 226关注 0票数 1

全,

我是Python新手,在更新日历项的reminder_is_set属性时遇到问题。我正在尝试从现在开始和7天后获得我的日历项目,并关闭提醒。

我可以很好地获取视图中的日历项目。我可以很好地列举这些项目。我似乎就是想不出如何更新值和保存每一项。我查看了示例并查看了批量更新示例,但我没有看到在fetch和批量更新调用之间设置值的位置。感谢任何人的帮助。

代码语言:javascript
复制
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])
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-08 20:37:54

主要的问题是,您的更改是在items_iter中进行的,但是您使用calendar_items调用bulk_update(),而calendar_items没有这些更改。

下面是一个应该可以工作的示例:

代码语言:javascript
复制
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)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56040093

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档