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
Create an account today to enjoy exclusive features and engage with our awesome community!
Sign upRelated Posts | Replies | Views | Activity | |
---|---|---|---|---|
|
0
Oct 19
|
4100 | ||
|
7
Jul 19
|
41402 | ||
|
3
May 19
|
9784 | ||
|
2
Aug 18
|
11383 | ||
|
1
Mar 15
|
3873 |