odoo - 元素 '' 不能位于父视图中
问题描述
我正在尝试在 Odoo 11 中自定义报告。我正在修改 XML 文件,但出现此错误:
File "/home/omar/odoo/odoo11/odoo/models.py", line 3094, in write
self._write(old_vals)
File "/home/omar/odoo/odoo11/odoo/models.py", line 3260, in _write
self._validate_fields(vals)
File "/home/omar/odoo/odoo11/odoo/models.py", line 1041, in _validate_fields
raise ValidationError("%s\n\n%s" % (_("Error while validating constraint"), tools.ustr(e)))
odoo.tools.convert.ParseError: "Error while validating constraint
Element '<t t-if="caseacocher">' cannot be located in parent view
Error context:
View `report_quotation_inherit_demo`
[view_id: 714, xml_id: moduletest.report_quotation_inherit_demo, model: n/a, parent_id: 637]
None" while parsing None:14, near
<data inherit_id="sale.report_saleorder_document">
解决方案
转到设置,选择用户界面,然后选择视图。在搜索字段中输入以下视图:report_saleorder_document。是 Qweb 类型(报告)。
因此,您正在尝试从该视图继承,而该视图t-if="caseacocher"
不能位于父视图 ( report_saleorder_document
) 的此处。您缺少 xpath。
您想在父视图中的哪个位置找到它?您将需要打开此视图并从此处找到可以在模块中使用的其他内容,而不是t-if
. 它必须存在于父视图中!我建议你使用 xpath 找到一个表达式,然后把这个条件。
例如,如果div
有一个名为 的类page
,那么您可以使用类似:
<xpath expr="//div[@class='page']" position="inside">
<t t-if="caseacocher">
<!--etc what ever you want put here-->
</t>
</xpath>
这只是一个示例,但您可以t-if
在xpath
.
祝你好运。
推荐阅读
- sql - 当我在 SQL 查询中执行联合或某些命令时,我想对列值求和
- python - SQLite Trigger: Update a table after insert is done on another
- angular - 如何在 Angular 6 中以人类可读的方式表示文件大小?
- javascript - 为什么我的变量没有初始化值?
- javascript - 在 React 中将对象从一个对象数组复制到另一个对象
- java - 设置总屏幕宽度的布局宽度百分比
- python - 尝试在 ubuntu 上安装 pygame 会出错
- asp.net - 重定向到页面后,TempData 字典为空
- ruby-on-rails - 如何以 Rails 形式创建具有多个数据的集合选择?
- python - 在 Python 中猜数字 - 递减范围问题