This question has been flagged
9 Replies
15742 Views

Hi friends,

I tried to update context in Odoo8 API i got below error and i also try to update self.with_context but it not display when i print self._context.

So i want to know what is difference between self.with_context and self._context?

Any have solution for below error?

File "/home/workspace/erp/openerp/addon/training/registration.py", line 106, in action_open_survey
    self._context['survey_token'] = response_id.token
  File "/home/workspace/erp/openerp/tools/misc.py", line 1250, in __setitem__
    raise NotImplementedError("'__setitem__' not supported on frozendict")
NotImplementedError: '__setitem__' not supported on frozendict

 

Thanks in advance

 

Avatar
Discard
Best Answer

you can try this : 

new_context = dict(self.env.context).copy()

new_context.update( { 'Key' : Value } )

and pass new_context in function...

Avatar
Discard
Best Answer

in case of that error you can update context like:

dict(context).update({'key' : value})
Avatar
Discard

That doesn't work. The change doesn't show up in the dict but the error message neither.

Are you sure that this doesnt work? context=dict(context) context.update({'key' :value}) before using context in a function.

Best Answer

Hi..

in odoo-7 i used to add in xml file like this..

<field name="pricelist_id"  context="{'prod_id': product_id,'c_id':id}" options='{"always_reload": True}' on_change="onchange_price(product_id,pricelist_id)" />

it works good.....

Avatar
Discard
Author

Thanks for your answer anand :) can you please explain in brief? Ans i am using odoo8 api to update context in .py file not in xml because of business login.

have u seen this.. https://www.odoo.com/forum/help-1/question/whats-the-context-2236

Author

Hi anand, i seen that one i tried that one but still i got error msg.

post the code which throws error...