本指南是关于创造Odoo的Web客户端模块。
创建网站Odoo,查看—>odoo10 开发者文档(2)–建立一个网站
补充业务能力或延长Odoo现有业务系统,查看—>odoo10 开发者文档(3)–建立一个模块。
警告
该指南需要的知识
· js基础,并且能使用好
· jQuery
· Underscore.js
也需要已安装的odoo,以及Git
一个简单的模块
现在用一个简单的odoo模块开始,该模块持有基本web组件配置,并让我们测试web框架。
示例模块在线可用,可以使用以下命令下载:
$ git clone http://github.com/odoo/petstore
它将创建一个petstore 文件夹,然后把它添加到addons path文件。创建新的数据库,并安装oepetstore模块。
如果你浏览oepetstore文件夹,会看见以下内容:
该模块已拥有各种服务器定制。我们稍后再回到这些问题,现在让我们关注static文件夹中的web相关内容。
被用于odoo模块”web”侧的文件必须放在”static”文件夹里,这样对web浏览器是可用的,外部不能被浏览器读取的文件。 src/css, src/js and src/xml 子文件是一种常用的但非严格必须的。
oepetstore/static/css/petstore.css
目前空,将为pet store内容持有CSS。
oepetstore/static/xml/petstore.xml
大部分空,将持有QWeb模板
最重要(也是最有趣)的部分,包含应用的逻辑(或最少包含web浏览器side)如js。它看起来应该这样:
odoo.oepetstore = function(instance, local) {
var _t = instance.web._t,
_lt = instance.web._lt;
var QWeb = instance.web.qweb;
local.HomePage = instance.Widget.extend({
start: function() {
console.log("pet store home page loaded");
},
});
instance.web.client_actions.add(
'petstore.homepage', 'instance.oepetstore.HomePage');
}
它只在浏览器控制台打印一个小消息。