Qweb是一個client和server的東東,類似jsp
實現:
通過點擊upgrade,彈出一個upgrade的對話框


* 編寫python
~~~
# 公司看板
class CompanyInDeviceUpgrade(models.Model):
_inherit = 'res.company'
# 發布
@api.multi
def open_device_upgrade_wizard(self):
return {
'name': 'Upgrade', # 對話框標題
'target': 'new',
'tag': 'tmp_device_upgrade_wizard_tag', # 對應action
'type': 'ir.actions.client', # 使用client action
}
~~~
* 編寫action
~~~
<!-- action for device upgrade wizard -->
<record id="tmp_device_upgrade_wizard_client" model="ir.actions.client">
<field name="name">Upgrade</field>
<field name="target">new</field>
<field name="tag">tmp_device_upgrade_wizard_tag</field>
</record>
~~~
* 編寫template(對應html)
device_upgrade_wizard_template.xml
~~~
<?xml version='1.0' encoding='utf-8' ?>
<template xml:space="preserve">
<t t-name="device_upgrade_wizard_client">
<p>Upgrade</p>
</t>
</template>
~~~
* 編寫js(對應html)
device_upgrade_wizard.js
~~~
odoo.define('tmp_device_upgrade.wizard', function (require) {
var core = require('web.core');
var Widget = require('web.Widget');
var QWeb = core.qweb;
var monitor_control = Widget.extend({
template: 'device_upgrade_wizard_client',
init: function (parent, context) {
this._super(parent, context);
//this.layer = layer.msg("加載中...",{time:0, shade: 0.3});
},
start: function () {
this.load_fn();
},
load_fn: function () {
var self = this;
/* setTimeout(function () {
new dispatch_desktop(self, self.layer).appendTo(self.$el);
},1000);*/
self.$el.find('#mytable thead').removeAttr("style");
}
});
core.action_registry.add('tmp_device_upgrade_wizard_tag', monitor_control);
})
;
~~~
* 引入js
~~~
<template id="assets_backend" name="tree view menu" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<script type="text/javascript" src="/tmp_device/static/src/js/device_upgrade_wizard.js"></script>
</xpath>
</template>
~~~
- 開發教程
- Odoo10開發教程一(構建模塊)
- Odoo10開發教程二(基本視圖)
- Odoo10開發教程三(模型關聯)
- Odoo10開發教程四(繼承)
- Odoo10開發教程五(計算字段和默認值)
- Odoo10開發教程六(高級視圖)
- Odoo10開發教程七(工作流和安全)
- 參考手冊
- odoo V10中文參考手冊(一:ORM API)
- odoo V10中文參考手冊(指導規范)
- 技巧
- odoo 常用widget
- Odoo(OpenERP)開發實踐:菜單隱藏(1)
- Odoo(OpenERP)開發實踐:菜單隱藏(2)
- Odoo(OpenERP)開發實踐:數據模型學習
- Odoo中自動備份數據庫
- Odoo(OpenERP)應用實踐: 使用db-filter參數實現通過域名指定訪問哪個數據庫
- Odoo(OpenERP)配置文件openerp-server.conf詳解
- Odoo(OpenERP v8)數據模型(Data Model)
- odoo10學習筆記十七:controller
- Qweb定義