Skip to Content
Menu
This question has been flagged
3 Replies
2374 Views

Hi guys,

In my medical module, I created 2 models, "appointment" and "evaluation".
on the appointment form, I created a "confirm" button which changes the appointment state from the draft state to the confirmed one, with the following function:


def confirm(self):
self.write({'state': 'confirmed'})

It works like perfect, but I need when I click in the same button, to create a new record in the "evalutation" table, and copy the data of this appointment.

How to do it please? any advice?

Avatar
Discard
Best Answer

you can try the following:
self.env['evaluation.model'].create({'name': self.name_of_new_record})

Keep in mind in the create dictionary, you have to set all required fields for the evaluation model.

Avatar
Discard
Best Answer

Hi, Nomad_King answered your question pertfecly. I just want to add some information. self.env['model_name'].create(list_of_dictionaries) creates new records of the model 'model_name'. 'list_of_dictionaries' is, well, a list of dictionaries. Each dictionary is a new record. It basically looks like this {'field_name1': value, 'field_name2': value, ...} You get it. Be carefull with related fields: One2many and Many2many fields use special 'commands'. Check the documentation for more info.

Avatar
Discard
Author Best Answer

Thanks so much for your quick reply,

I will try it and let you know


Avatar
Discard
Related Posts Replies Views Activity
0
Jan 22
465
2
Aug 24
3188
1
Oct 21
8387
1
May 24
1433
1
Dec 23
993