100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > Odoo开发需要注意些什么?

Odoo开发需要注意些什么?

时间:2022-12-29 20:41:08

相关推荐

Odoo开发需要注意些什么?

在Odoo专栏中,我们分享了很多技术文章,也不禁在思考:有哪些点是需要我们注意,却又很容易忽略的呢?这也是做Odoo开发时非常重要的内容,毕竟一个小bug,真的很磨人啊!

所以本期想分享一下做开发时,需要注意哪些问题~整理的或许并不全面,欢迎大家多多补充!

希望我们能一起规避更多的坑!

1、通过脚手架搭建项目框架:python odoo-bin scaffold 项目名称 工程目录

eg:在example目录下建立demo项目: python odoo-bin scaffold demo example

2、建立odoo.conf文件,配置以下参数:

3、如果自定义widget、视图样式等,需要在templates.xml中引用

<?xml version="1.0" encoding="UTF-8"?><odoo><template id="assets_end" inherit_id="web.assets_backend"><xpath expr="." position="inside"><script src="/demo/static/src/js/change_form_controller.js" type="text/javascript"/><link href="/demo/static/src/scss/deo.scss" rel="stylesheet" type="text/scss"/></xpath></template></odoo>

4、如果需要额外依赖其他模块或改造qweb后,在__manifest__.py中引用

'depends': ['base', 'account'],'qweb': ['static/src/xml/change_demo.xml'],

5、修改权限文件ir.model.access.csv之后,需要重新启动服务,否则不生效。

6、修改js、css等静态文件不用重新启动服务,只需要刷新页面。

7、修改xml文件后如果不想升级,可以在odoo-bin启动文件Parameters增加以下配置,这样只刷新页面就能达到升级效果。

--dev=xml -c

8、当ORM可以实现的时候尽量使用ORM而不要直接写SQL语句,因为它可能会绕过ORM的一些规则如权限、事务等,还会让代码变得难读且不安全。

9、Odoo有自己的事务处理机制,不用手动提交事务。

10、Odoo的计算字段默认不存库。

11、如果扩展Odoo底层的res.user表,需要手动在数据库中增加扩展字段,再进行升级,否则升级报错。

12、使用@api.onchange注解,可以监听当前字段,但只有在页面上修改才会触发,后台修改不会触发。

13、使用@api.depends注解,要加上所有的依赖字段,页面修改或者后台修改都会触发,需要保存后才显示修改后的结果。

14、创建一个Model或者TransientModel类型的py文件,需要在相应的__init__.py引用,并且在权限文件ir.model.access.csv赋予权限;创建一个AbstractModel类型的py文件只需要在__init__.py引用,不用赋予权限。

15、如果修改qweb新建按钮,那么该按钮对应的方法前要加上@api.model注解

以上内容欢迎批评指正~还有哪些注意事项?交给大家了!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。