1、js模板  web_template.js

odoo.define('web', function (require) {
"use strict";

var core = require('web.core');
var Widget = require('web.Widget');
var AbstractAction = require('web.AbstractAction');

var QWeb = core.qweb;
var _t = core._t;

var Dashboard = AbstractAction.extend({
//需要加载的template模板
template: 'web_template',

init: function(parent, data){
return this._super.apply(this, arguments);
},

start: function(){
return true;
},


});

// 对应client_action中的tag
core.action_registry.add('web.main', Dashboard);


});

 

2、定义static目录里xml  web_template.xml

<?xml version="1.0" encoding="UTF-8"?>
<templates xml:space="preserve">
<t t-name="web">
<iframe marginheight="0" marginwidth="0" width="100%" height="910" src="url" frameborder="0" allowfullscreen="True"></iframe>
</t>
</templates>

 

 

3、导入你的js

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="assets_web_report_backend" name="Web Settings Dashboard Assets" inherit_id="web.assets_backend" priority="18">
<xpath expr="." position="inside">
<script type="text/javascript" src="/test_template/static/src/js/web_template.js"></script>
</xpath>
</template>
</odoo>

 

 

4、定义动作和菜单

<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="vehicl_action_client" model="ir.actions.client">
<field name="name">自定义页面</field>
<field name="tag">web.main</field>
</record>

<menuitem id="menuitem_action_client" name="自定义页面" sequence="1" action="vehicle_action_client"/>

</odoo>

 

5、在

 

最后能看到:

odoo14里面开发一个简单的action.client   的tag 模板例子_sed

 

 

报错原因:Refused to display 'https://www.baidu.com/' in a frame because it set 'X-Frame-Options' to 'sameorigin'.odoo14里面开发一个简单的action.client   的tag 模板例子_sed_02

 

 

 

 

odoo界面嵌入iframe,Refused to display in a frame because it set 'X-Frame-Options' to 'DENY'

跨域请求失败处理!


 

 

后面我换了一个url后可以了:

odoo14里面开发一个简单的action.client   的tag 模板例子_xml_03

 

心有猛虎,细嗅蔷薇