添加或编辑表单 CRM/opportunity 中的模型
Add or edit a model in form CRM/opportunity
我有一个安装了 CRM 的 Odoo 11。
我创建了 3 个字段(类型选择)并从 编辑表单视图 添加到 CRM/商机中的视图。
我必须在 3 个下拉列表之间创建依赖关系(第一个下拉值限制了第二个下拉列表,第二个和第三个也是如此)。
我认为我可以做模型代码。这是我的问题,无法在表单视图中找到或添加模型。
编辑:
我在字段中找到了高级属性。
在 x_selectionb 的高级属性中,我添加了 Dependencies x_selectiona 和 Compute:
a = [('c','c'),('d','d')]
b = [('e','e'),('f','f')]
for record in self:
if record.x_selectiona == 'a':
record.x_selectionb = fields.Selection(a)
elif record.selectiona == 'b':
record.x_selectionb = fields.Selection(b)
我得到下一个错误:
raise ValueError("forbidden opcode(s) in %r: %s" % (expr, ', '.join(opname[x] for x in codes)))
如何在第一个选项 select 之后的第二个选项中添加我想要的值?
我意识到我正在访问 self.x_selectionb 中的值,而不是字段
我找到了解决方案。
我创建了 3 个模型(x_modelA、x_modelB、x_modelC)。
- x_modelA: x_name(字符)
- x_modelB: x_name(char), x_a1(many2one related to x_modelA)
- x_modelC: x_name(char), x_b1(many2one related to x_modelB)
在 opportunities 中我创建了三个字段 many2one (x_a, x_b, x_c).
在 xml 视图中,我添加了三个字段:
<field name="x_a"/>
<field name="x_b" domain="[('x_a1', '=', x_a)]"/>
<field name="x_c" domain="[('x_b1', '=', x_b)]"/>
在这一步依赖关系有效,但如果我更改之前的下拉列表,它就会失去依赖关系。
在字段 x_b 中(如果 x_a 更改则清除值)我添加了依赖项 x_a 并在计算中:
for record in self:
record['x_b'] = False
在字段 x_c 中(如果 x_a 或 x_b 更改则清除值)我添加了依赖项 x_a、x_b 并在计算中:
for record in self:
record['x_c'] = False
我有一个安装了 CRM 的 Odoo 11。
我创建了 3 个字段(类型选择)并从 编辑表单视图 添加到 CRM/商机中的视图。
我必须在 3 个下拉列表之间创建依赖关系(第一个下拉值限制了第二个下拉列表,第二个和第三个也是如此)。
我认为我可以做模型代码。这是我的问题,无法在表单视图中找到或添加模型。
编辑:
我在字段中找到了高级属性。 在 x_selectionb 的高级属性中,我添加了 Dependencies x_selectiona 和 Compute:
a = [('c','c'),('d','d')]
b = [('e','e'),('f','f')]
for record in self:
if record.x_selectiona == 'a':
record.x_selectionb = fields.Selection(a)
elif record.selectiona == 'b':
record.x_selectionb = fields.Selection(b)
我得到下一个错误:
raise ValueError("forbidden opcode(s) in %r: %s" % (expr, ', '.join(opname[x] for x in codes)))
如何在第一个选项 select 之后的第二个选项中添加我想要的值?
我意识到我正在访问 self.x_selectionb 中的值,而不是字段
我找到了解决方案。
我创建了 3 个模型(x_modelA、x_modelB、x_modelC)。
- x_modelA: x_name(字符)
- x_modelB: x_name(char), x_a1(many2one related to x_modelA)
- x_modelC: x_name(char), x_b1(many2one related to x_modelB)
在 opportunities 中我创建了三个字段 many2one (x_a, x_b, x_c).
在 xml 视图中,我添加了三个字段:
<field name="x_a"/>
<field name="x_b" domain="[('x_a1', '=', x_a)]"/>
<field name="x_c" domain="[('x_b1', '=', x_b)]"/>
在这一步依赖关系有效,但如果我更改之前的下拉列表,它就会失去依赖关系。
在字段 x_b 中(如果 x_a 更改则清除值)我添加了依赖项 x_a 并在计算中:
for record in self:
record['x_b'] = False
在字段 x_c 中(如果 x_a 或 x_b 更改则清除值)我添加了依赖项 x_a、x_b 并在计算中:
for record in self:
record['x_c'] = False