İçereği Atla
Menü
Bu soru işaretlendi
1 Cevapla
8362 Görünümler

I've got this situation in which a boolean field get's changed by the user. And, it gets saved.

But... whenever the form is loaded, that field has to be set to False. Notice that I am not referring to default value. No, the field's value has to be changed so, no matter what value was saved, it has to be reset to False the next time the form is loaded.


I thought about using a computed field that would change the other field's value but, despite the log tellng me the value had been changed, nothing happened in the form.


An __init__, perhaps? Tried it but it was always raising an error. The model is product.template, BTW


Avatar
Vazgeç
En İyi Yanıt

Hi,

You can use the fields_view_get method of models.Model.

This method is called whenever odoo is rendering a view of the model.

It gets the correct view given the context and returns the data of the field.

This \tutorial may help.

http://elico-corp.com.sg/2015/10/01/how-to-tech-dynamically-modify-your-view/

Best regards.

Avatar
Vazgeç
Üretici

Thanks Bejaoui. That's what I had done: I put a query inside this method But, somewhow, I believe there must be some more... "elegant" way of doing this.

For me, i use this method every time i need to dynamically modify a view based on some condition. You can find several examples in the standard addons.

Is there other way to do it? Possible, why not :)

Welcome.

İlgili Gönderiler Cevaplar Görünümler Aktivite
2
Eyl 23
9842
1
Eki 22
6706
1
Haz 16
3900
1
Mar 16
10186
2
Tem 24
1813