Hello, how could I create a button that creates a new record in another model containing data from my current model? from my python module
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
Hello, how could I create a button that creates a new record in another model containing data from my current model? from my python module
This method will create a new record in the target model and populate its fields with data from the current model.
from odoo import models, fields
class YourModel(models.Model):
_name = 'your.model'
_description = 'Your Model'
name = fields.Char(string='Name')
description = fields.Text(string='Description')
related_field = fields.Many2one('other.model', string='Related Model')
def action_create_new_record(self):
for record in self:
# Create a new record in the other model
self.env['other.model'].create({
'name': record.name, # Pass data from the current model
'description': record.description,
'related_field': record.id,
})Add a button to your form view in the XML file. Use the type="object" attribute to call a Python method when the button is clicked.
<record id="view_your_model_form" model="ir.ui.view"><field name="name">your.model.form</field>
<field name="model">your.model</field>
<field name="arch" type="xml">
<form string="Your Model">
<header>
<button name="action_create_new_record" type="object" string="Create Record" class="oe_highlight"/>
</header>
<sheet>
<!-- Your form fields go here -->
</sheet>
</form>
</field>
</record>
When you click the "Create Record" button on the form view of your current model, a new record will be created in the target model using the data from the current record.
Best Regards,
NIZAMUDHEEN MJ
Accurates
相关帖文 | 回复 | 查看 | 活动 | |
---|---|---|---|---|
|
0
10月 19
|
4198 | ||
|
7
7月 19
|
41615 | ||
|
3
5月 19
|
9975 | ||
|
2
8月 18
|
11523 | ||
|
1
3月 15
|
4046 |