跳至内容
菜单
此问题已终结

Hello,

I build my own module, and for each project i add a calendar event with followers from project.

So i write a method:


def create_calendar_event(self):
create_event = self.env['calendar.event'].create({'start': self.start_date, 'stop': self.end_date, 'name': self.title})
self.calendar_id = create_event

partner_list = []
for follower in self.project_id.message_follower_ids:
partner_list.append(follower.partner_id.id)
self.testfield = str(partner_list) # Debug

calendar_fallowers = []
for follower2 in self.calendar_id.message_follower_ids:
calendar_fallowers.append(follower2.partner_id.id)
self.testfield_calendar = str(calendar_fallowers) # Debug

# add followers from project to calendar
for partner in partner_list:
if partner not in calendar_fallowers:
res_id = self.calendar_id.id
res_model = 'calendar.event'
partner_id = partner
self.env['mail.followers'].create({'res_id': res_id, 'res_model': res_model, 'partner_id': partner_id})


self.env.cr.commit()


So i have calendar event with followers, but i don't have any default subscription types.

and i wanna add default  subscription types for all followers: Discussions and Note

How to do this ?



    形象
    丢弃
    编写者 最佳答案

    The answer is changing this:



      #   add followers from project to calendar
    for partner in partner_list:
    if partner not in calendar_fallowers:
    res_id = self.calendar_id.id
    res_model = 'calendar.event'
    partner_id = partner
    self.env['mail.followers'].create({'res_id': res_id, 'res_model': res_model, 'partner_id': partner_id})
    to

     self.calendar_id.message_subscribe(partner_list)
    形象
    丢弃
    相关帖文 回复 查看 活动
    0
    3月 15
    3969
    1
    3月 15
    4232
    4
    4月 24
    2411
    0
    7月 20
    3477
    0
    4月 19
    3288