Odoo在hr模块中创建具有自定义操作的自定义模块

时间:2019-04-30 14:08:15

标签: python odoo odoo-11

我正在Odoo中创建我的第一个模块。 Odoo版本是11.00。所以基本上我想要的是在Payslip Action中添加一个新选项,称为电子邮件Salary Slip。因此,单击该按钮时,它将自动将电子邮件发送给员工电子邮件。

为此,我将模块文件夹结构做成了这样

email_payslip [main folder]
 - __init__.py
 - __manifest__.py
|
|            - __init__.py 
 - Models - |
|            - email_payslip.py
|
|           
 - Views - email-payslip.xml

所以对于__init__.py来说,代码是这样的

from . import models

对于__manifest__.py代码来说就是这样

{
    'name': 'Email Payslip',
    'summary': """This module will send email""",
    'version': '10.0.1.0.0',
    'description': """This module will send email""",
    'author': 'Demo',
    'company': 'Demo',
    'website': 'https://github.com',
    'category': 'Tools',
    'depends': ['base'],
    'license': 'AGPL-3',
    'data': [
        'views/email_payslip.xml',
    ],
    'demo': [],
    'installable': True,
    'auto_install': False,
}

在模型__init__.py中,代码是这样的

from . import email_payslip

email_payslip.py中,代码为

from odoo import fields, models, tools, api

在views文件夹email_payslip.xml中,代码是这样

<?xml version="1.0" encoding="utf-8"?>
<odoo>
    <data>
        <record id="from_view_form" model="ir.ui.view">
            <field name="name">form.view.form</field>
            <field name="model">my.form</field>
            <field name="arch" type="xml">
                <form string="Form">
                    <button name="send_email" string="Send Email"
                        type="object" class="oe_highlight" />
                </form>
            </field>
        </record>

    </data>
</odoo>

0 个答案:

没有答案