Python 未设置任何默认值
我编写了一个向导,表单视图应该显示一个one2many字段,其中的行取自上下文['active_id'] 我正确地设置了one2many默认值,但是当窗体打开时,不会显示任何行 我错过什么了吗?(我为代码错误缩进道歉)Python 未设置任何默认值,python,openerp,default,openerp-8,Python,Openerp,Default,Openerp 8,我编写了一个向导,表单视图应该显示一个one2many字段,其中的行取自上下文['active_id'] 我正确地设置了one2many默认值,但是当窗体打开时,不会显示任何行 我错过什么了吗?(我为代码错误缩进道歉) 问题可能在于: res['details'] = **[(6, False, dws)]** 您的详细信息字段是一个One2many字段,[(6,0,[ID])]用于多个字段。 在您的情况下,您不需要为details字段分配任何内容;它是一个One2many,因此它是自动的,因
问题可能在于:
res['details'] = **[(6, False, dws)]**
您的详细信息字段是一个One2many字段,[(6,0,[ID])]用于多个字段。
在您的情况下,您不需要为details字段分配任何内容;它是一个One2many,因此它是自动的,因为您已经创建了相应的manyOne记录(dw)
:
- 对许多人来说
- 还有一个:
我试着用res['details']=[(0,0,dws)]和dws使用dict数组,但后来我意识到我只需要res['details']=dws。关于指导原则,您是对的,但是对于新的API8IMHO,这应该不再需要了,因为“ID”不仅仅是数字,而是整个对象。例如,表示法object_id.id是冗余的。它可能有向后兼容的感觉……我同意现在感觉有点不推荐,但是object\u record/object\u records似乎有点冗长,不是吗?;)也许他们将来会指向类似object\u rd/object\u rds的东西,谁知道呢。似乎你不需要“传递”:self.id实际上self.id==False,因为你意识到你只需要res['details']=dws插入父对象后,有一种神奇的方法可以将self.id的“delivery”字段分配给子实体。您确定要在default\u get中使用self.id吗?我敢打赌这个对象还没有id。我认为id是在创建对象之后出现的。为了创建对象,需要使用默认值。我错过了什么?
res['details'] = **[(6, False, dws)]**