Skip to Content
เมนู
คุณต้องลงทะเบียนเพื่อโต้ตอบกับคอมมูนิตี้
คำถามนี้ถูกตั้งค่าสถานะ
1 ตอบกลับ
33775 มุมมอง

Hello, I am trying to pass in values from some fields in a wizard that I created. I am using the context dictionary in the xml file to pass the value of the field, but when I use the context variable in the .py file, then it doesnt get the value that I passed in. Its like its not finding the key name that Im giving it on the xml form.

Here is an example in the xml file:

<field name="amount" context="{'amount_val': amount}"/>

Here is an example in the .py file:

def make_payment(self, cr, uid, vals, context=None):
    amount = context.get('amount_val', 1.00)

When I enter an amount of 100.00 in the wizard, all that it gets is the default value 1.00. So I was wondering what I am doing wrong here? Thank you

อวตาร
ละทิ้ง

What exactly are you trying to do?

When is make_payment called? Using the context as attribute in the xml tag will only pass the context to the field amount, when you change/create it.

you can use

self.env.context.get('your_dict_name')

คำตอบที่ดีที่สุด

I think you should put the context="{'amount_val': amount}" in the button tag that calls your make_payment method.

<button name="make_payment" type="object" context="{'amount_val': amount}"/> or something like that.
อวตาร
ละทิ้ง
ผู้เขียน

Very good. That did the trick. Thank you

Related Posts ตอบกลับ มุมมอง กิจกรรม
0
มี.ค. 15
3800
0
ส.ค. 17
3249
1
มี.ค. 15
4720
0
มี.ค. 15
4314
1
ก.พ. 24
2845