1
我在我的odoo中定製了一個名爲「x_vehicles」的模塊我可以從odoo中的自定義模塊繼承嗎?
可能從這個模塊繼承來覆蓋create方法?
我有這個代碼
class extend_vehicle(models.Model):
_inherit = 'x_vehicle'
@api.model
def create(self, vals):
# Do something...
return super(extend_vehicle, self).write(vals)
但我得到這個錯誤
2016-07-04 15:05:20,488 9217 ERROR pro werkzeug: Error on request:
Traceback (most recent call last):
File "/Users/jose/Work/odoo/env/lib/python2.7/site-packages/werkzeug/serving.py", line 177, in run_wsgi
execute(self.server.app)
File "/Users/jose/Work/odoo/env/lib/python2.7/site-packages/werkzeug/serving.py", line 165, in execute
application_iter = app(environ, start_response)
File "/Users/jose/Work/odoo/openerp/service/server.py", line 246, in app
return self.app(e, s)
File "/Users/jose/Work/odoo/openerp/service/wsgi_server.py", line 184, in application
return application_unproxied(environ, start_response)
File "/Users/jose/Work/odoo/openerp/service/wsgi_server.py", line 170, in application_unproxied
result = handler(environ, start_response)
File "/Users/jose/Work/odoo/openerp/http.py", line 1493, in __call__
return self.dispatch(environ, start_response)
File "/Users/jose/Work/odoo/openerp/http.py", line 1467, in __call__
return self.app(environ, start_wrapped)
File "/Users/jose/Work/odoo/env/lib/python2.7/site-packages/werkzeug/wsgi.py", line 588, in __call__
return self.app(environ, start_response)
File "/Users/jose/Work/odoo/openerp/http.py", line 1642, in dispatch
ir_http = request.registry['ir.http']
File "/Users/jose/Work/odoo/openerp/http.py", line 363, in registry
return openerp.modules.registry.RegistryManager.get(self.db) if self.db else None
File "/Users/jose/Work/odoo/openerp/modules/registry.py", line 355, in get
update_module)
File "/Users/jose/Work/odoo/openerp/modules/registry.py", line 386, in new
openerp.modules.load_modules(registry._db, force_demo, status, update_module)
File "/Users/jose/Work/odoo/openerp/modules/loading.py", line 334, in load_modules
force, status, report, loaded_modules, update_module)
File "/Users/jose/Work/odoo/openerp/modules/loading.py", line 237, in load_marked_modules
loaded, processed = load_module_graph(cr, graph, progressdict, report=report, skip_modules=loaded_modules, perform_checks=perform_checks)
File "/Users/jose/Work/odoo/openerp/modules/loading.py", line 132, in load_module_graph
models = registry.load(cr, package)
File "/Users/jose/Work/odoo/openerp/modules/registry.py", line 169, in load
model = cls._build_model(self, cr)
File "/Users/jose/Work/odoo/openerp/models.py", line 591, in _build_model
original_module = pool[name]._original_module if name in parents else cls._module
File "/Users/jose/Work/odoo/openerp/modules/registry.py", line 84, in __getitem__
return self.models[model_name]
KeyError: 'x_vehicle'
我不知道如果我需要從其他模式擴展或做一些特別的...
請,誰能幫助我?
編輯:也許與名稱「自定義模塊」我犯了一個錯誤... 這是一個模塊內置的odoo,而不是一個外部模塊。我沒有模塊的代碼。它是由odoo提供的工具構建的。
我不能提取結構,因爲它是一個有點複雜,提取所有的功能,所以,我需要嘗試從模塊繼承
我希望,這可能是更具體的
編輯2:我認爲這是問題... 如果我嘗試安裝模塊,繼承功能,在選項卡「技術數據」,我可以看到該模型是未知...但我不知道爲什麼...
此外,這是我的實際OpenERP的 .py文件
{
...
'category': 'Automation',
'version': '1',
# any module necessary for this one to work correctly
'depends': ['base','x_vehicle'],
# always loaded
'data': [
]
}
是的,這是其中一個問題......非常感謝。 我已經添加在__openerp__.py文件x_vehicle,但現在我得到這個其他錯誤 ERROR親openerp.modules.graph:模塊extended_vehicle:滿足的依賴關係:x_vehicle –
另外,我得到這個消息太「您嘗試安裝依賴於模塊'x_vehicle'的模塊'車輛'。 但是後一個模塊在您的系統中不可用。「 –
檢查你的插件路徑。它將在那裏。否則,您的自定義模塊不會安裝。可能有人更改該模塊名稱。 –