odon中的@onchange无法正常工作

时间:2018-04-10 07:15:05

标签: odoo-10

我有两个模型main.channelsub.channel

main.channelsub.channel

有许多关系

sale.ordermain.channelsub.channel

有很多关系

现在处于销售订单中我希望如果我选择main.channel记录,则应自动获取属于所选sub.channel记录的main.channel对象中的所有记录。

我已经完成了这项功能,但是在点击“保存”按钮后获取记录后,所有子(sub.channel)记录似乎都丢失了,而且没有保存。

我已经通过许多不同的方式尝试过这个但是我还没有找到适当的解决方案

以下是我在sale.order中编写的代码。

@api.onchange("main_channel_ids")
def sub_ids_values(self):
    for rec in self:
        sub_channels_list=[]
        for main_channel in rec.main_channel_ids:
            for sub_channel in main_channel.sub_channel_ids:
                sub_channels_list.append(sub_channel.id)
        #rec.sub_channel_ids = [(6,0,sub_channels_list)] #this is also not working
        rec..write({'sub_channel_ids': [(6, 0, sub_channels_list)]})   

1 个答案:

答案 0 :(得分:1)

您可以写如下:

a=0
b=1
class A:
    a=42
    b=list((a+i for i in range(3)))
x=A()
print(x.b)