Buat item menu tindakan lain di Odoo

Saya mencoba memperluas fungsi tindakan yang ditentukan dalam tampilan modul khusus dengan menambahkan item menu baru untuknya. Saya tidak yakin bagaimana kode untuk melakukannya.

Model yang digunakan adalah: pendidikan.kelompok

Modul yang didefinisikan adalah: pendidikan.

masukkan deskripsi gambar di sini

<record id="education_group_mailing_action" model="ir.actions.server">
    <field name="name">Generate group lists</field>
    <field name="type">ir.actions.server</field>
    <field name="model_id" ref="model_education_group"/>
    <field name="binding_model_id" ref="model_education_group"/>
    <field name="state">code</field>
    <field name="code">action = records.generate_lists()</field>
</record>

<record id="education_group_mailing_action2" model="ir.default">
        <field name="model_id" ref="model_education_group" />
        <field name="field_id" eval="1" />
        <field name="json_value">False</field>
        <field name="name">Generate group lsts</field>
        <field name="key2">client_action_multi</field>
        <field name="key">action</field>
        <field name="model">education.group</field>
        <field name="value" eval="'ir.actions.server,' + str(ref('education_group_mailing_action'))" />
    </record>
class EducationGroup(models.Model):
    _inherit='education.group'

   def generate_lists(self):
        print("HELLO!")

Adakah yang tahu bagaimana caranya? Terima kasih sudah membaca!


person arevilla009    schedule 16.03.2020    source sumber


Jawaban (2)


Jika Anda menggunakan Odoo12.0 maka Anda harus melakukan seperti ini.

    <record id="new_action1" model="ir.actions.server">
        <field name="name">New Action</field>
        <field name="model_id" ref="model_product_template" />
        <field name="binding_model_id" ref="model_product_template" />
        <field name="state">code</field>
        <field name="code">records.export_product()</field>
    </record>
    <record id="run_product_new_order_action2" model="ir.default">
        <field name="model_id" ref="model_product_template" />
        <field name="field_id" eval="1" />
        <field name="json_value">False</field>
        <field name="name">New Action</field>
        <field name="key2">client_action_multi</field>
        <field name="key">action</field>
        <field name="model">product.template</field>
        <field name="value" eval="'ir.actions.server,' + str(ref('new_action1'))" />
    </record>

Jika Anda menggunakan Odoo13.0 maka akan seperti itu

       <record id="product_order_new_action1" model="ir.actions.server">
            <field name="name">New Action</field>
            <field name="type">ir.actions.server</field>
            <field name="model_id" ref="model_product_template" />
            <field name="binding_model_id" ref="model_product_template" />
            <field name="state">code</field>
            <field name="code">records.sync_product(False)</field>
        </record>
person Adam Strauss    schedule 17.03.2020
comment
Hai Adam, saya mencoba kode berikutnya saat saya mengedit tetapi tidak berhasil, saya tidak dapat melihat item dropdown yang baru, tahukah Anda apa yang terjadi? @Adam Strauss - person arevilla009; 18.03.2020
comment
yang mana ? yang pertama atau kedua? - person Adam Strauss; 18.03.2020
comment
Saya menggunakan Odoo12 Jadi saya mencoba yang pertama. Saya mengedit kode saya dengan percobaan baru tetapi masih tidak dapat melihat item daftar dropdown. Terimakasih atas bantuannya! @Adam Strauss - person arevilla009; 18.03.2020
comment
Saya perlu menggunakan tampilan pohon, untuk meluncurkan fungsi python untuk catatan yang dipilih. @Adam Strauss - person arevilla009; 18.03.2020

Periksa Kode ini,

<record id="mail_mass_mailing_lists_action" model="ir.actions.server">
    <field name="name">Generate group lists</field>
    <field name="type">ir.actions.server</field>
    <field name="model_id" ref="mass_mailing.model_mail_mass_mailing_list"/>
    <field name="binding_model_id" ref="mass_mailing.model_mail_mass_mailing_list"/>
    <field name="state">code</field>
    <field name="code">action = records.generate_lists()</field>
</record>

Terima kasih

person Dipen Shah    schedule 17.03.2020