Odoo16电商应用前端自定义后XML文件存储位置及本地编辑咨询
Odoo16 电商前端自定义文件位置及PyCharm直接编辑方法
一、内置编辑器修改后的文件存储位置
通过Odoo内置编辑器完成的电商前端自定义,不会直接保存到本地.xml文件,而是存储在Odoo数据库的ir.ui.view表中,作为视图的自定义变体存在。
如果需要导出为本地.xml文件,操作步骤:
- 进入Odoo后台,依次打开「设置 > 技术 > 用户界面 > 视图」
- 通过名称或所属模块(如
website_sale)筛选出你自定义的电商相关视图 - 打开目标视图后,点击顶部的「导出」按钮,选择XML格式导出,保存到本地你的Odoo模块目录(建议放在自定义模块的
views文件夹下)
二、直接在PyCharm编辑电商前端.xml文件
1. 定位视图文件
- 电商核心视图默认在Odoo源码的
website_sale/views目录下,比如产品详情页、列表页的视图文件(如website_sale_product_views.xml) - 不建议直接修改核心模块文件,推荐创建自定义模块,将自定义视图放在自己模块的
views目录下,通过继承方式修改核心视图
2. 编辑与应用修改
- 在PyCharm中打开目标.xml文件,直接修改QWeb模板代码(调整布局、添加字段等)
- 修改完成后,重启Odoo服务
- 进入Odoo后台「设置 > 应用」,找到对应模块(自定义模块或
website_sale),点击「更新」,刷新网页即可生效
3. 关键注意事项
- 若之前通过内置编辑器做过修改,数据库中的视图变体优先级高于本地.xml文件,需先在
ir.ui.view中删除对应的自定义变体,才能让本地文件的修改生效 - 推荐使用继承语法修改视图,示例:
<record id="custom_sale_product_view" model="ir.ui.view"> <field name="name">custom.sale.product.view</field> <field name="inherit_id" ref="website_sale.view_sale_product"/> <field name="arch" type="xml"> <!-- 用xpath定位要修改的节点,比如添加自定义内容 --> <xpath expr="//div[@class='product_details']" position="inside"> <p>自定义内容</p> </xpath> </field> </record>
内容的提问来源于stack exchange,提问作者Tu Nguyen
相关产品推荐
相关产品推荐

