Принудительно в message_subscribe в odoov10 не работает - PullRequest
0 голосов
/ 15 января 2020

Я создаю метод обновления подписчиков в календаре из модуля проекта. Сначала я хочу удалить всех существующих подписчиков и добавить новое. У меня проблема с «force = True» в документации (https://www.odoo.com/documentation/10.0/reference/mixins.html):

force - если True, удалите существующих подписчиков перед созданием новых, используя указанные подтипы в параметрах.

Так что я изменяю на true, но мой метод добавляет только новые записи без удаления старых.

@api.multi
def update_calendar_event(self):
    partner_list = []
    for follower in self.project_id.message_follower_ids:
        partner_list.append(follower.partner_id.id)
    partner_list.append(self.create_uid.partner_id.id)
    calendar_event = self.calendar_id.id
    self.calendar_id.message_subscribe(partner_ids=partner_list, force=True)
    self.test_field = calendar_event #debug

Как удалить все существующие записи в подписчиках календаря?

1 Ответ

0 голосов
/ 15 января 2020

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

@api.multi
def update_calendar_event(self):
    partner_list = []
    calendar_partner_list = []
    for follower in self.project_id.message_follower_ids:
        partner_list.append(follower.partner_id.id)
    partner_list.append(self.create_uid.partner_id.id)
    for follower in self.calendar_id.message_follower_ids:
        calendar_partner_list.append(follower.partner_id.id)
    self.calendar_id.message_unsubscribe(calendar_partner_list)
    self.calendar_id.message_subscribe(partner_list)
    self.test_field = [calendar_partner_list, partner_list] #debug
...