跳至内容
菜单
此问题已终结
1 回复
3123 查看

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

形象
丢弃
最佳答案

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

形象
丢弃
编写者

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