今天刚好讨论问题,提到odoo shell,它很强大,我觉得有必要分享一下它
1. odoo shell是什么呢?
它是一个类似python的terminal集成环境,或者说他就是一个python的terminal环境,请看
2.那既然他是一个python的terminal环境,那为啥Odoo还要再搞一套,难道直接在电脑上打开terminal执行Python3它不香吗?非也,它远比python的terminal强大,
除了执行python命令我还可以调用odoo的方法
怎么样秀不秀,是不是很强大?
3.那这么强大的东西我怎么用呢,很简单,在我们的开发环境中,打开一个terminal,执行
python3 /opt/odoo/start shell -c {配置文件路径} -d {数据库名}
这样他就可以运行起来了,而且他是可以独立于你通过Web IDE debug启动的服务的进程,是不同的进程!
4.那有了神奇,我们该如何使用呢(是不是心想好想装逼怎么办)?举几个
1)有一些功能,通过界面访问老超时怎么办,多试几次、祈祷它有一次不超时?想得美,但是odoo shell可以一次性满足你(前提是命令要敲对,功能没有bug)
比如同步翻译术语,因为翻译表很大,所以总是超时,这时候你就可以考虑使用odoo shell
2)有一些功能,一旦错过就不再~该说挽留时没有说出口
比如,还是翻译(我真不是针对翻译,都是巧合),现在使用csv做翻译,只有在新建数据库安装ps_post的时候才会加载翻译(也不知道后面会不会优化),
改了翻译还要新建库,太浪费时间了,怎么办?odoo shell直接执行加载翻译的方法
执行完了,快去数据库看看吧,翻译它回来了
3)有一些时候,自己写了个bug,但是不想重建库,也不想删数据(或者删不了、改不了),想去数据库写个sql吧,sql玩的也不6,你说气不气。
没关系,借助odoo shell + ORM,
怎么样,odoo shell 玩的6,对于实施来说也是一个福音了吧
4)你也可以查询你想查的任何内容
....
odoo shell应用的场景还很多,赶紧试一下吧
5.注意,注意,注意
如果有一天,你发现你修改的界面上没有生效,或者创了一行数据在界面上没有查到,怎么查都查不到,别着急砸电脑!
看看自己有没有提交事务,永远不要忽略事务!