一招解决OpenERP8.0安装旧版模块报错

有喜欢尝鲜的网友开始玩8.0了,可是版本还没发布,社区的很多特别好的模块还没有升级到8,所以经常碰到模块无法安装的问题。

No module name osv

网友提出将模块的 from osv import osv,fields 改为 from openerp.osv import osv,fields

其实这是一个编程规范问题,旧版模块代码里很多这种导入方式,一个一个改对于不懂代码的或者openerp新手是不现实的。

众所周知,openerp的运行入口是openerp-server.py,在6.0及之前版本,这个入口文件和其他server包是在同一个目录的,但是openerp6.1开始这个目录被提升了一个目录。server包都放在了一个叫做 openerp的目录下,而 openerp-server.py 被重命名为 openerp-server(没有后缀名)和openerp目录同级。有谁知道这个伟大创新有什么意义请举手。我个人认为是瞎折腾。而python的特性决定它在导入包的时候是按入口文件的位置找相对路径的。所以这个顶级目录结构改动的结果就是,我们需要在所有的import语句里加上openerp.这个前缀。即使是OpenERP公司自己也花了两年的时间才在trunk版本里做完了所有这些相应的修改。非官方模块就更难跟上进度了。

必须有个临时解决方案,那就是 openerp/conf/deprecation.py 这个文件

里面定义了一个变量,open_openerp_namespace,在7.0里这个值是True,也就是说即使你模块里import osv也不会报错,因为server乖乖滴去openerp这个目录去找osv目录,而不会报错。

但是8.0不一样了,openerp公司已经改过了所有他们负责的模块,他们不再需要这个临时方案了,然后我们看到在8.0版本里这个变量值为设为了 False

这就是7.0里可以安装的oecn_base_fontsauto_backup等模块在8.0里无法安装的原因。

如果你希望使用其他非官方模块,我建议你把这个值改成 True

一招解决OpenERP8.0安装旧版模块报错,布布扣,bubuko.com

时间: 2024-11-13 04:21:34

一招解决OpenERP8.0安装旧版模块报错的相关文章

解决Xcode6.0.1编译Unity3D工程报错

错误信息大概如下 Undefined symbols for architecture i386: "_clock$UNIX2003",.....等 大概就是引用了一个链接库出错了. 解决办法如下: 打开OC工程里的Main.mm 加入下面代码 #include <time.h> extern "C" { clock_t clock$UNIX2003(void) { return clock(); } }

在CentOS7.3上安装旧版的docker-engine-1.12.6

安装旧版的docker-engine-1.12.6 kubeadm init --api-advertise-addresses=172.16.160.211命令的时候,提示docker版本太新了 一.在线安装(未成功) 在线安装旧版docker,可以使用以下方法:yum install docker-engine-1.12.6*将开始安装docker-engine.x86_64 0:1.12.6-1.el7.centos 如果只想下载rpm包,可以使用以下命令:yum downloader d

(22)odoo 安装旧模块报错处理

一些老版本的模块没有得到升级,所以经常碰到模块无法安装的问题. No module name osv 将模块的 from osv import osv,fields 改为 from openerp.osv import osv,fields 其实这是一个编程规范问题,旧版模块代码里很多这种导入方式,一个一个改对于不懂代码的或者openerp新手是不现实的. 众所周知,openerp的运行入口是openerp-server.py,在6.0及之前版本,这个入口文件和其他server包是在同一个目录的

Centos6.3 PHP编译安装JSON模块报错解决

我在搭建监控系统时候出现JSON模块安装失败,PHP5.3  系统Centos6.3,安装json报错 ZVAL_DELREF 符号未知错误... # Warning: PHP Startup: Unable to load dynamic library '/home/json/json-1.2.1/modules/json.so' - /home/json/json-1.2.1/modules/json.so: undefined symbol: ZVAL_DELREF in Unknown

Windows下使用pip安装python包是报错-UnicodeDecodeError: &#39;ascii&#39; codec can&#39;t decode byte 0xcb in position 0

先交待下开发环境: 操作系统:Windows 7 Python版本:2.7.9 Pip版本:6.1.1 其他环境忽略 在windows下使用pip下载python包,出现如下错误 [plain] view plain copy Collecting xxxxxx Exception: Traceback (most recent call last): File "D:\Python27\lib\site-packages\pip-6.0.8-py2.7.egg\pip\basecommand.

Windows 7、8.0、8.1安装.NET 3.5报错问题

Windows 7.8.0.8.1安装.NET 3.5报错问题 DISM   PID=8468 TID=8476 Scratch directory set to 'C:\Users\\AppData\Local\Temp\'. - CDISMManager::put_ScratchDirDISM   PID=8468 TID=8476 DismCore.dll version: 6.3.9600.17031 - CDISMManager::FinalConstructDISM   PID=84

cocos2dx 2.2.3 xcode5.0,新建mac项目报错

cocos2dx 2.2.3 xcode5.0,新建mac项目报错 Undefined symbols for architecture x86_64: "cocos2d::extension::LabelReader::createInstance()", referenced from: cocos2d::extension::GUIReader::GUIReader() in GUIReader.o "cocos2d::extension::ButtonReader::

解决docker images,info,-d等命令报错的问题

解决docker images,info,-d等命令报错的问题 楼主因为在搞docker,所以出现了好多的问题,百度上不好找,谷歌的话,楼主不会翻墙.不管给大家推荐一个软件:蓝灯. 楼主不管输入那个命令,都出现了: FATA[0000] Cannot connect to the Docker daemon. Is 'docker -d' running on this host? 以及类似的错误,就连docker version命令都报错了,楼主开始找啊找,找到了好多东西,结果发现没一个能行的

centos6.8安装python3.7.3报错Can&#39;t connect to HTTPS URL because the SSL module is not available问题解决

环境:CentOS release 6.8 (Final) # 直接编译python3.7在使用pip3安装依赖的时候报错: Can't connect to HTTPS URL because the SSL module is not available. 解决方法: 1.编译安装OpenSSL 1.0.2j版本并重新配置环境变量 下载OpenSSL源码包: wget http://www.openssl.org/source/openssl-1.0.2j.tar.gz 解压缩,编译安装: