Skip to Content
Meniu
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
Această întrebare a fost marcată
3 Răspunsuri
3663 Vizualizări

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?

Imagine profil
Abandonează
Cel mai bun răspuns

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.

Imagine profil
Abandonează
Cel mai bun răspuns

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.

Imagine profil
Abandonează
Autor Cel mai bun răspuns

Thanks so much for your quick reply,

I will try it and let you know


Imagine profil
Abandonează
Related Posts Răspunsuri Vizualizări Activitate
0
ian. 22
465
2
aug. 24
5079
1
oct. 21
9369
1
mai 24
3141
1
dec. 23
2512