This question has been flagged
1 Reply
2537 Views

I'm learning a custom module from the net and I'm seeing the sentence like this in a method:

'partner_id': order.partner_shipping_id.id

I know that this sentence is used to derive any information from the model - sale.order (order = sale.order), and partner_shipping_id is the field in the model. Could anybody explain what is id here? the id of the field? but it could be not id. maybe it could be name in the end of sentence. Thanks

Avatar
Discard
Best Answer

Hello Vladislav,

'partner_id': order.partner_shipping_id.id

partner_id is Many2one field in the model. Hence it requires a id of its table.

lets print evrything one by one-

print order
O/P : (sale.order,1)    
sale.order is object
1 is the id in sale.order table

print order.partner_shipping_id
O/P:(res.partner,12)
res.partner is object
12 is the id in res.partner table

print order.partner_shipping_id.id
O/p :12
12 which is id in res.partner table


Input:
'partner_id': order.partner_shipping_id.id

Output:

'partner_id' : 12

Avatar
Discard
Author

why order.partner_shipping_id => res.partner,12? why 12? in res.partner there is no partner_shipping_id field