我的两个模特在我的服务中,即_service& _苹果。我想要的是我想用自动编写的一些字段创建_apple的记录。例如,从销售订单中我们可以创建发票,并且在创建发票时,会自动生成一些发票字段,这些字段与销售订单中的记录相同。
我所做的是:
我的服务模式
class _service(models.Model):
_name = 'se.service'
_rec_name = "service_name"
name = fields.Char(
'Reference', copy=False, readonly=True, default=lambda x: _('New'))
service_name = fields.Char("Service Name", required=True)
service_department = fields.Many2one('hr.department', "Department Name", required=True, help="Department Name of employee")
service_description = fields.Text("Description", required=True)
service_remarks = fields.Text("Remarks")
service_methodology = fields.Html(string="Methodology")
service_id = fields.One2many('se.objective', 'service_id', string="Objectives", required=True)
@api.model
def create(self, valuees):
if valuees.get('name', _('New')) == _('New'):
valuees['name'] = self.env['ir.sequence'].next_by_code('se.service') or _('New')
return super(_service, self).create(valuees)
def _create_apple(self):
inv_obj = self.env['se.apple']
self.ensure_one()
se = _service
invoice = inv_obj.create({
'apple_name': se.service_name,
'apple_description': se.service_description,
'apple_remarks': se.service_remarks
})
return invoice
def create_apple(self):
self._create_apple()
我的_apple模型
class _apple(models.Model):
_name = 'se.apple'
apple_name = fields.Char("Apple Name")
apple_description = fields.Text("Remarks Apple")
apple_remarks = fields.Text("Remarks Apple")
我的服务表格:
<header>
<button name="create_apple" string="Create Apple" type="object" class="btn-primary"/>
</header>
如果我这样做: 1.我在se.service中创建一个表单。 我保存表格。 3.我点击create_apple按钮。
我希望: 1.在se.apple中自动创建的记录 2.记录将有apple_name,apple_description&amp; apple_remarks自动生成,因为我填写了se.service。
答案 0 :(得分:2)
您自己拥有当前的服务记录,因此您可以直接使用它。 试试这个更新的方法。
def _create_apple(self):
inv_obj = self.env['se.apple']
self.ensure_one()
invoice = inv_obj.create({
'apple_name': self.service_name,
'apple_description': self.service_description,
'apple_remarks': self.service_remarks
})
return invoice