在创建合作伙伴时添加 CrmLead 机会

Add a CrmLead opportunity on Partner creation

我刚开始研究 Odoo 13 进行一些自定义。

我需要在创建新联系人时创建新的 Crm 商机。

from odoo import models, fields, api, crmlead
from datetime import datetime

class ResPartner(models.Model):
    _inherit = 'res.partner'


    @api.model
    def create(self, values):
        result = super(ResPartner, self).create(values)
        CrmLead.create({
            'company_id': 1,
            'priority': '0',
            'name': 'murri',
            'partner_id': 3705,
            'planned_revenue': 0,
            'date_deadline': datetime.date(2020, 10, 26)
        })
        return result

我尝试扩展 ResPartner,但出现错误

ImportError: 无法从 'odoo

导入名称 'crmlead'

定义您从 source model 创建的 destination model

@api.model
def create(self, values):
    CrmLead = self.env['crm.lead'] // Destination Object Environment Create
    result = super(ResPartner, self).create(values)
    CrmLead.create({
        'company_id': 1,
        'priority': '0',
        'name': 'murri',
        'partner_id': 3705,
        'planned_revenue': 0,
        'date_deadline': datetime.date(2020, 10, 26)
    })
return result

因为 Odoo 不知道 CrmLead 是什么意思,所以您可以做这些事情来摆脱这个错误。

@api.model
def create(self, values):
    CrmLead = self.env['crm.lead']    // Creating an object of 'crm.lead' model
    result = super(ResPartner, self).create(values)
    CrmLead.create({
        'company_id': 1,
        'priority': '0',
        'name': 'murri',
        'partner_id': 3705,
        'planned_revenue': 0,
        'date_deadline': datetime.date(2020, 10, 26)
    })
    return result

@api.model
def create(self, values):
    result = super(ResPartner, self).create(values)
    self.env['crm.lead'].create({
        'company_id': 1,
        'priority': '0',
        'name': 'murri',
        'partner_id': 3705,
        'planned_revenue': 0,
        'date_deadline': datetime.date(2020, 10, 26)
    })
    return result