This question has been flagged
1 Reply
7112 Views

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
Discard
Best Answer

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
Discard
Author

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.