首页 > 解决方案 > 'hr.payslip' 对象在评估'action = records.action_email_payslip_send()'时没有属性'action_email_payslip_send'"

问题描述

当我单击操作电子邮件工资单时,我收到此错误 ValueError: : "'hr.payslip' object has no attribute 'action_email_payslip_send'" 同时评估 'action = records.action_email_payslip_send()'

清单.py

'name': 'Emailpayslip',
'summary': """This module will send the payslip to the employee as pdf document""",
'version': '10.0.1.0.0',
'description': """This module will send the payslip to the employee as pdf document""",
'author': 'Pramod Kumar',
'company': 'Net Tantra Technology',
'website': 'http://www.nettantra.com',
'category': 'Human Resource',
'depends': ['base','hr_payroll','mail','web'],
'license': 'AGPL-3',
'data': [
    'views/emailpayslip.xml',
    'data/email_template_data.xml'
],
'demo': [],
'installable': True,
'auto_install': False,

模型/电子邮件payslip.py

from odoo import fields, models, api, _ from odoo.exceptions import 警告

类Emailpayslip(模型。模型):

_name = 'email.payslip'
_inherit = 'hr.payslip'
@api.multi
def action_email_payslip_send(self):
  self.ensure_one()
  template = self.env.ref(
    'Email_Payslip.email_template_payslip',
    False,
  )
  compose_form = self.env.ref(
    'mail.email_compose_message_wizard_form',
    False,
  )
  ctx = dict(
    default_model='hr.payslip',
    default_res_id=self.id,
    default_use_template=bool(template),
    default_template_id=template and template.id or False,
    default_composition_mode='comment',
    )
  return {
    'name': _('Compose Email'),
    'type': 'ir.actions.act_window',
    'view_type': 'form',
    'view_mode': 'form',
    'res_model': 'mail.compose.message',
    'views': [(compose_form.id, 'form')],
    'view_id': compose_form.id,
    'target': 'new',
    'context': ctx,
    }

初始化.py

从 。导入模型

意见/emailpayslip.xml

emailpayslip.xml

错误信息 错误信息

标签: python-3.xodoo-11

解决方案


在 models/emailpayslip.py 中进行一些更改。只需更改 _name = 'hr.payslip'。它会起作用。


推荐阅读