İçereği Atla
Menü
Bu soru işaretlendi
8 Cevaplar
12211 Görünümler

Dear all

I would want to have the same behavior as when you click on

Sale > Customers > Create (> the customer checkbox for the partner is automatically selected)

Or

Purchase > Suppliers > Create (> the supplier checkbox for the partner is automatically selected)

I added a new checkbox "Doctor" to partner, and I would want to set it as default if I click "Create" at my new menu at Medical.

Medical > Doctor > Create (> the doctor checkbox should be checked)

Thank you in advance

Best regards!

Avatar
Vazgeç
En İyi Yanıt

you should set it's default value to True, then the checkbbox will appear selected in new object

Avatar
Vazgeç
Üretici

Hello Temur, I want it to set doctor = True only if I create a new partner from my new menuitem action.

ok then. in such case you can set default value for doctor field using function. my answer is still valid in this conditions.

you can implement function that assigns default value as follows:

def compute_default_value_of_doctor(self):
    return self.env.context.get('doctor_default', False)

in your action set 'doctor_default' in context....

of course you've to add

default=compute_default_value_of_doctor
to your "Doctor" fields definition.
Üretici

Works great! Thank you!

Üretici En İyi Yanıt

This solution worked as Temur said at the comments: 

def compute_default_value_of_doctor(self):
return self.env.context.get('doctor_default', False)

# Fields
doctor = fields.Boolean(string='Is doctor?', default=compute_default_value_of_doctor)

For the specific action view for the doctor menuitem add this:

<field name="context">{"default_doctor": True}</field>

Update: There is no need to write the python code, just add "default_" at the context field before the name of the attribute and it will work.

Regards!

Avatar
Vazgeç

upvote for the "default_" prefix ;)

İlgili Gönderiler Cevaplar Görünümler Aktivite
1
Kas 23
2325
2
Eyl 23
5695
1
Tem 20
3860
3
Tem 25
4112
0
May 25
802