odoo网站商城商品信息模板修改不能只修改qweb模板文件,还需要修改widget的xmlDependencies属性。
举例如下:
在qweb.xml文件中:
<?xml version="1.0" encoding="UTF-8"?>
<templates xml:space="preserve">
<t t-extend="website_sale.productsRecentlyViewed">
<t t-jquery="div.d-block" t-operation="replace"></t>
<t t-jquery="button.js_add_cart" t-operation="replace"></t>
</t>
</templates>
然后新建一个 website_sale_recently_viewed.js 文件:
odoo.define('module_name.recently_viewed', function (require) {
var publicWidget = require('web.public.widget');
publicWidget.registry.productsRecentlyViewedSnippet.include({
xmlDependencies: (publicWidget.registry.productsRecentlyViewedSnippet.prototype.xmlDependencies || []).concat(
['/module_name/static/src/xml/website_sale_recently_viewed.xml']),
});
});
最后在 views/templates.xml中增加 website_sale_recently_viewed.js 的引用:
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="website_sale_uom_assets_frontend" inherit_id="website.assets_frontend" name="module_name_assets_frontend">
<xpath expr="." position="inside">
<script src="/module_name/static/src/js/website_sale_recently_viewed.js" type="text/javascript"/>
</xpath>
</template>
.......
</odoo>