我正在开发一个OpenERP模块,它包含太多的类,当我尝试安装它时,我会出现错误,我找不到哪个类有这个错误,我应该怎么做(我使用eclipse IDE开发)
Traceback (most recent call last):
File "C:UsersMostafaPycharmProjectsodooodoo8openerphttp.py", line 517, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "C:UsersMostafaPycharmProjectsodooodoo8openerphttp.py", line 538, in dispatch
result = self._call_function(**self.params)
File "C:UsersMostafaPycharmProjectsodooodoo8openerphttp.py", line 294, in _call_function
return checked_call(self.db, *args, **kwargs)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpservicemodel.py", line 113, in wrapper
return f(dbname, *args, **kwargs)
File "C:UsersMostafaPycharmProjectsodooodoo8openerphttp.py", line 291, in checked_call
return self.endpoint(*a, **kw)
File "C:UsersMostafaPycharmProjectsodooodoo8openerphttp.py", line 754, in __call__
return self.method(*args, **kw)
File "C:UsersMostafaPycharmProjectsodooodoo8openerphttp.py", line 387, in response_wrap
response = f(*args, **kw)
File "C:UsersMostafaPycharmProjectsodooodoo8addonswebcontrollersmain.py", line 953, in call_button
action = self._call_kw(model, method, args, {})
File "C:UsersMostafaPycharmProjectsodooodoo8addonswebcontrollersmain.py", line 941, in _call_kw
return getattr(request.registry.get(model), method)(request.cr, request.uid, *args, **kwargs)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpapi.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpaddonsbasemodulemodule.py", line 450, in button_immediate_install
return self._button_immediate_function(cr, uid, ids, self.button_install, context=context)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpapi.py", line 237, in wrapper
return old_api(self, *args, **kwargs)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpaddonsbasemodulemodule.py", line 498, in _button_immediate_function
registry = openerp.modules.registry.RegistryManager.new(cr.dbname, update_module=True)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpmodulesregistry.py", line 341, in new
openerp.modules.load_modules(registry._db, force_demo, status, update_module)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpmodulesloading.py", line 358, in load_modules
loaded_modules, update_module)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpmodulesloading.py", line 263, in load_marked_modules
loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpmodulesloading.py", line 158, in load_module_graph
models = registry.load(cr, package)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpmodulesregistry.py", line 148, in load
model = cls._build_model(self, cr)
File "C:UsersMostafaPycharmProjectsodooodoo8openerpmodels.py", line 653, in _build_model
'_inherits': dict(cls._inherits),
ValueError: dictionary update sequence element #0 has length 11; 2 is required
在没有看到实际代码的情况下很难(几乎不可能)回答。问题显然存在于您的一个模型中的_inherits
定义中。
很可能您混淆了_inherits
和_inherit
。虽然后一个可以是列表或单个字符串,但_inherits
必须是字典。
您可能错误地将_inherits
定义为列表(而不是dict),因为您确实打算使用_inherit
。
'_inherits':dict(cls._inherits),您只需检查一下您是否做对了。我也是openErp的初学者,但我想你对这行有意见。Ludwik先生是正确的,但他不知道如何判断错误。