Python 如何手动卸载openerp模块

Python 如何手动卸载openerp模块,python,openerp,Python,Openerp,我已经在openerp v7上安装了一个我想卸载的模块 使用接口失败,我在卸载过程中遇到错误 是否有“手动”方式卸载模块?删除addons/下的模块文件夹是否足够,或者是否有其他事情要做,以便以最干净的方式完成 以下是我尝试通过接口卸载模块时遇到的错误: Client Traceback (most recent call last): File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725- p

我已经在openerp v7上安装了一个我想卸载的模块

使用接口失败,我在卸载过程中遇到错误

是否有“手动”方式卸载模块?删除
addons/
下的模块文件夹是否足够,或者是否有其他事情要做,以便以最干净的方式完成

以下是我尝试通过接口卸载模块时遇到的错误:

Client Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/web/http.py", line 204, in dispatch
    response["result"] = method(self, **self.params)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/web/controllers/main.py", line 1132, in call_button
    action = self._call_kw(req, model, method, args, {})
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/web/controllers/main.py", line 1120, in _call_kw
    return getattr(req.session.model(model), method)(*args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/web/session.py", line 42, in proxy
    result = self.proxy.execute_kw(self.session._db, self.session._uid,     self.session._password, self.model, method, args, kw)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/web/session.py", line 30, in proxy_method
    result = self.session.send(self.service_name, method, *args)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/web/session.py", line 103, in send
    raise xmlrpclib.Fault(openerp.tools.ustr(e), formatted_info)


Server Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/web/session.py", line 89, in send
    return openerp.netsvc.dispatch_rpc(service_name, method, args)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/netsvc.py", line 292, in dispatch_rpc
    result = ExportService.getService(service_name).dispatch(method, params)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/service/web_services.py", line 626, in dispatch
    res = fn(db, uid, *params)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/osv/osv.py", line 188, in execute_kw
    return self.execute(db, uid, obj, method, *args, **kw or {})
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/osv/osv.py", line 131, in wrapper
    return f(self, dbname, *args, **kwargs)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/osv/osv.py", line 197, in execute
    res = self.execute_cr(cr, uid, obj, method, *args, **kw)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/osv/osv.py", line 185, in execute_cr
    return getattr(object, method)(cr, uid, *args, **kw)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/base/module/module.py", line 495, in button_immediate_uninstall
    return self._button_immediate_function(cr, uid, ids, self.button_uninstall,     context=context)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/addons/base/module/module.py", line 475, in _button_immediate_function
    _, pool = pooler.restart_pool(cr.dbname, update_module=True)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/pooler.py", line 39, in restart_pool
    registry = RegistryManager.new(db_name, force_demo, status, update_module)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/modules/registry.py", line 218, in new
    openerp.modules.load_modules(registry.db, force_demo, status, update_module)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/modules/loading.py", line 354, in load_modules
    loaded_modules, update_module)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/modules/loading.py", line 256, in load_marked_modules
    loaded, processed = load_module_graph(cr, graph, progressdict, report=report,     skip_modules=loaded_modules, perform_checks=perform_checks)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/modules/loading.py", line 188, in load_module_graph
    load_data(module_name, idref, mode)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/modules/loading.py", line 76, in <lambda>
    load_data = lambda *args: _load_data(cr, *args, kind='data')
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-    py2.7.egg/openerp/modules/loading.py", line 124, in _load_data
    tools.convert_xml_import(cr, module_name, fp, idref, mode, noupdate, report)
  File "/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/tools/convert.py", line 945, in convert_xml_import
    relaxng.assert_(doc)
  File "lxml.etree.pyx", line 3027, in lxml.etree._Validator.assert_     (src/lxml/lxml.etree.c:129517)
AssertionError: Did not expect text in element record content, line 33
客户端回溯(最近一次调用上次):
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/addons/web/http.py”,第204行,已发送
响应[“结果”]=方法(self,**self.params)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/addons/web/controllers/main.py”,第1132行,调用按钮中
action=self.\u call\u kw(请求、模型、方法、参数,{})
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/addons/web/controllers/main.py”,第1120行,输入
返回getattr(请求会话模型(模型),方法)(*args,**kwargs)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/addons/web/session.py”,第42行,在代理中
结果=self.proxy.execute_kw(self.session.\u db,self.session.\u uid,self.session.\u密码,self.model,方法,参数,kw)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/addons/web/session.py”,第30行,采用代理法
结果=self.session.send(self.service_名称、方法、*args)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/addons/web/session.py”,第103行,发送
raise xmlrpclib.Fault(openerp.tools.ustr(e),格式化信息)
服务器回溯(最近一次呼叫最后一次):
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/addons/web/session.py”,第89行,发送
返回openerp.netsvc.dispatch\u rpc(服务名称、方法、参数)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/netsvc.py”,第292行,在dispatch\u rpc中
结果=ExportService.getService(服务名称).dispatch(方法,参数)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/service/web_services.py”,第626行,已发送
res=fn(db,uid,*params)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/osv/osv.py”,第188行
返回self.execute(db、uid、obj、method、*args、**kw或{})
包装器中的文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/osv/osv.py”,第131行
返回f(self、dbname、*args、**kwargs)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/osv/osv.py”,执行中第197行
res=self.execute\u cr(cr,uid,obj,method,*args,**kw)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/osv/osv.py”,第185行,在执行中
返回getattr(对象、方法)(cr、uid、*args、**kw)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/addons/base/module/module.py”,第495行,在按钮中
返回self.\u button\u immediate\u函数(cr、uid、ids、self.button\u卸载,context=context)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/addons/base/module/module.py”,第475行,在按钮立即功能中
_,pool=pooler.restart_pool(cr.dbname,update_module=True)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/pooler.py”,第39行,在重启池中
registry=RegistryManager.new(数据库名称、强制演示、状态、更新模块)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/modules/registry.py”,第218行,新格式
加载模块(registry.db、force\u demo、status、update\u模块)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/modules/load.py”,第354行,加载模块
已加载\u模块,更新\u模块)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/modules/loading.py”,第256行,装入标记的模块
已加载、已处理=加载\u模块\u图形(cr、图形、progressdict、报告=报告、跳过\u模块=加载的\u模块、执行\u检查=执行\u检查)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/modules/load.py”,第188行,加载模块图
加载数据(模块名称、idref、模式)
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0_20131016_232725-py2.7.egg/openerp/modules/load.py”,第76行
load_data=lambda*args:_load_data(cr,*args,kind='data'))
文件“/usr/local/lib/python2.7/dist-packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/modules/load.py”,第124行,在加载数据中
工具。转换xml导入(cr、模块名称、fp、idref、模式、noupdate、报告)
文件“/usr/local/lib/python2.7/dist packages/openerp-7.0\u 20131016\u 232725-py2.7.egg/openerp/tools/convert.py”,第945行,在convert\u xml\u import中
松弛.断言(文档)
文件“lxml.etree.pyx”,第3027行,位于lxml.etree.\u Validator.assert.\uu(src/lxml/lxml.etree.c:129517)
AssertionError:在第33行的元素记录内容中不应包含文本
很抱歉这么长的跟踪

起初,我怀疑其中一个xml文件出错,但当我尝试手动安装模块时,也出现了同样的错误,我认为还有一些地方出了问题,但我看不出是什么


干杯

插件/
中删除模块的代码是不够的-这将破坏OpenERP

解决方案1-尝试解决您发现的错误