2021-01-01

戏说odoo中一些术语

odoo中有些概念,对于初学odoo二次开发的人,可能理解起来一时有点费力,结合我自己的理解,把这些概念试着进行比喻,仅为戏说,不必苛求准确:

  •  关于odoo编程语言

用odoo编程,主要使用的是python、xml、Javascript、html, 可以看做odoo世界就是两对夫妇打造的,后台是python先生和xml太太,前台是javascript先生和html太太

python先生是后台(server端)出苦力的,负责计算、搬运等苦力活

xml太太是管账的,管理仓库数据、定义视图款式等

javascript先生是前台(browse端)出苦力的,负责前台各种操作的执行,

html太太是负责接待的,所以页面打扮工作由她负责,用户通过网页看的的基本都是她干的,包括视图的展示效果

  • 关于Qweb

Qweb是HTML的化妆师,负责对html外出前进行打扮,Qweb是不上台面的,所以每次odoo展示页面内容时,都要按照Qweb的意思,打扮好html。Qweb的手艺不是盖的,但要会她这一手还得好好学学。

  •  关于model

odoo项目开发,最核心的是定义模型(model),  每种模型可以比喻成不同的物种(class),物种的每个个体在面向对象的编程中叫一个对象(object),在odoo后台数据库中对应一条记录(record)。

每个物种都有自己的属性和行为模式,比如人,有姓名、性别、生日、身高等属性(property),也有打架、挖坑、运货、做梦等行为(activity)。

  • 关于controller

controller用于定义一些控制器,最常用的控制器是路由器(route), 路由器可以比作后台提供的电话专线,就是Javascript先生想要后台信息是,就拨打路由电话,路由器就会返回一页数据给前台或者直接渲染指定的页面。

与路由有点类似的是前台的小工阿贾克斯 (ajax), 它是javascript先生专门用来到后台搬运数据的小工,就是有一点,ajax去搬数据的时间可能比较长,javascript先生派它出门后,不会等他,而是会继续干自己的活

  • 关于view

View就是后台家自己的几个专门的页面小姐,社区版有tree、kanban、form、search、graph、pilot、avtivity、calendar等,专业版还有gantt等。这些页面不需要html太太去辛苦的装扮了,只要说一声,“我需要你家的tree、form、kanban、search等几个上台路面就可以了”,则XML太太就会打扮一下后,送上台来。

  • 关于template

template就是一小段可以多次使用的模板,一般会有一些内容会根据使用情况进行变化,所以虽然是同一副模板,但显示出了略有变化,但主体相同。这就好像家里安装门,都是门,但尺寸、款式略有不同。

  • 关于module

module可以比作工厂不同的车间,不同车间干不同的活,作为ERP软件,主要的都是一些管理价值链的工具,如人力资源管理(HR)、市场管理(marketing)、采购管理(Purchasing)、销售管理(sale)、财务管理(Accounting)、制造管理(Manufacturing)、产品管理(PLM)等等等等, 随着用户的外延,odoo用在各行各业,进行各种各样的管理工作。几乎覆盖了企业价值链的所有管理类辅助价值链了。

  • 关于website

odoo众多的模块中,有一个特殊的模块website, 这个模块的作用是提供用户一个不用登陆就能运行部分内容的地方,就好像在工厂门前的一个经营部门面,你要买工厂的东西,不用进厂里去。

对应的是application,指要登陆后才能运行的模块,如果你没有工厂的工作证,就进不了工厂,就运行不了里面的车间,干不了里面的活。

more is coming..... (持续更新中.....)

猜你喜欢

转载自blog.csdn.net/boophan/article/details/112062587