我这里主要是告诉大部分人怎么一步一步去理解修改,当然直接想要结果后面有代码片段复制就好,若方法有错或者又更好的方法可以直接提出来。
-
首先在首页页面上按F12打开Elements
-
不难发现里面有一个titile标签,这就是我们需要改的地方
-
那么此时就要用到odoo的页面继承与xpath来改写title标签,那么既然需要继承就需要找到被继承的视图id,接下来就是需要找到所对应的视图id使用xpath来改写就行。
-
首先在源码里面全局搜索
这里需要所有一些关键字,能搜索出来就行<title>Odoo</title>
如图所示,有3个符合结果的文件
很显然第一个文件结果为html文件,不符合odoo框架,所以PASS掉,则就剩余两个xml文件
在一一查看两个xml文件
可以发现两个xml文件都调用了共同的模板web.layout<t t-call="web.layout">
-
那接下来根据Odoo的xml书写规范可知必定有一个xml文件的id为web.layout 故而只需要搜索精确的id即可
id="web.layout"
那么的我们接下来只需要修改title即可
-
在view创建一个xml文件
-
书写继承模板,使用xpath的position="replace"属性,这里主要难的就是xpath的定位
-
写完之后需要去__manifest__.py文件添加该xml文件,重启升级即可
当然修改图标也是一样的操作
以下是标题代码
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<data>
<template id="inherit_title" inherit_id="web.layout">
<!-- 标题 -->
<xpath expr="//title[1]" position="replace">
<title>水果</title>
</xpath>
<!-- 图标 -->
<xpath expr="//link[@href=x_icon or '/web/static/src/img/favicon.ico']" position="replace">
<link rel="shortcut icon" href="/fruit_app/static/description/icon.png" type="image/x-icon"/>
</xpath>
</template>
</data>
</odoo>