项目模块委托继承的问题 - Odoo 13
Problems with delegated inheritance of project module - Odoo 13
我正在继承 project.project 模型以添加“项目类型”字段。
from odoo import models, fields, api
class Proyectos(models.Model):
_name = 'girodapp.proyectos'
_description = 'Proyectos potenciales de Girod'
tipo_proyecto = fields.Selection([
('Global','Global'),
('Barreras y Verticales','Barreras y Verticales'),
('Pretiles','Pretiles'),
])
project.id = fields.Many2one(
'project.project',
delegate=True,
ondelete='cascade',
required=True)
但是在安装模块时出现以下错误:
Error:
Odoo Server Error
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/http.py", line 624, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 310, in _handle_exception
raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
File "/usr/lib/python3/dist-packages/odoo/tools/pycompat.py", line 14, in reraise
raise value
File "/usr/lib/python3/dist-packages/odoo/http.py", line 669, in dispatch
result = self._call_function(**self.params)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 350, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 94, in wrapper
return f(dbname, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 339, in checked_call
result = self.endpoint(*a, **kw)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 915, in __call__
return self.method(*args, **kw)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 515, in response_wrap
response = f(*args, **kw)
File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 1326, in call_button
action = self._call_kw(model, method, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 1314, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 387, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 374, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "<decorator-gen-60>", line 2, in button_immediate_install
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 72, in check_and_log
return method(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 463, in button_immediate_install
return self._button_immediate_function(type(self).button_install)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 573, in _button_immediate_function
modules.registry.Registry.new(self._cr.dbname, update_module=True)
File "/usr/lib/python3/dist-packages/odoo/modules/registry.py", line 86, in new
odoo.modules.load_modules(registry._db, force_demo, status, update_module)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 423, in load_modules
loaded_modules, update_module, models_to_check)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 315, in load_marked_modules
perform_checks=perform_checks, models_to_check=models_to_check
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 182, in load_module_graph
load_openerp_module(package.name)
File "/usr/lib/python3/dist-packages/odoo/modules/module.py", line 376, in load_openerp_module
__import__('odoo.addons.' + module_name)
File "/mnt/extra-addons/girodapp/__init__.py", line 2, in <module>
from . import models
File "/mnt/extra-addons/girodapp/models/__init__.py", line 1, in <module>
from . import girodapp_proyectos
File "/mnt/extra-addons/girodapp/models/girodapp_proyectos.py", line 3, in <module>
class Proyectos(models.Model):
File "/mnt/extra-addons/girodapp/models/girodapp_proyectos.py", line 15, in Proyectos
required=True)
NameError: name 'project' is not defined
根据消息,名称项目未定义,但我使用了与 res.partner 相同的方法,它对我有用。
我究竟做错了什么?请帮助我!
只需将此更改为 project.id
至 project_id
。
第一个语法 python 将尝试从对象 project
中检索属性 id
这就是他抱怨它的原因。
您正在定义一个 Many2one 单字段,因此名称不能包含特殊字符。它是一个标识符,他必须遵循所有编程语言中的规则,比如它不能以数字开头....等等
我正在继承 project.project 模型以添加“项目类型”字段。
from odoo import models, fields, api
class Proyectos(models.Model):
_name = 'girodapp.proyectos'
_description = 'Proyectos potenciales de Girod'
tipo_proyecto = fields.Selection([
('Global','Global'),
('Barreras y Verticales','Barreras y Verticales'),
('Pretiles','Pretiles'),
])
project.id = fields.Many2one(
'project.project',
delegate=True,
ondelete='cascade',
required=True)
但是在安装模块时出现以下错误:
Error:
Odoo Server Error
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/odoo/http.py", line 624, in _handle_exception
return super(JsonRequest, self)._handle_exception(exception)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 310, in _handle_exception
raise pycompat.reraise(type(exception), exception, sys.exc_info()[2])
File "/usr/lib/python3/dist-packages/odoo/tools/pycompat.py", line 14, in reraise
raise value
File "/usr/lib/python3/dist-packages/odoo/http.py", line 669, in dispatch
result = self._call_function(**self.params)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 350, in _call_function
return checked_call(self.db, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/service/model.py", line 94, in wrapper
return f(dbname, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 339, in checked_call
result = self.endpoint(*a, **kw)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 915, in __call__
return self.method(*args, **kw)
File "/usr/lib/python3/dist-packages/odoo/http.py", line 515, in response_wrap
response = f(*args, **kw)
File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 1326, in call_button
action = self._call_kw(model, method, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/addons/web/controllers/main.py", line 1314, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 387, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "/usr/lib/python3/dist-packages/odoo/api.py", line 374, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "<decorator-gen-60>", line 2, in button_immediate_install
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 72, in check_and_log
return method(self, *args, **kwargs)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 463, in button_immediate_install
return self._button_immediate_function(type(self).button_install)
File "/usr/lib/python3/dist-packages/odoo/addons/base/models/ir_module.py", line 573, in _button_immediate_function
modules.registry.Registry.new(self._cr.dbname, update_module=True)
File "/usr/lib/python3/dist-packages/odoo/modules/registry.py", line 86, in new
odoo.modules.load_modules(registry._db, force_demo, status, update_module)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 423, in load_modules
loaded_modules, update_module, models_to_check)
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 315, in load_marked_modules
perform_checks=perform_checks, models_to_check=models_to_check
File "/usr/lib/python3/dist-packages/odoo/modules/loading.py", line 182, in load_module_graph
load_openerp_module(package.name)
File "/usr/lib/python3/dist-packages/odoo/modules/module.py", line 376, in load_openerp_module
__import__('odoo.addons.' + module_name)
File "/mnt/extra-addons/girodapp/__init__.py", line 2, in <module>
from . import models
File "/mnt/extra-addons/girodapp/models/__init__.py", line 1, in <module>
from . import girodapp_proyectos
File "/mnt/extra-addons/girodapp/models/girodapp_proyectos.py", line 3, in <module>
class Proyectos(models.Model):
File "/mnt/extra-addons/girodapp/models/girodapp_proyectos.py", line 15, in Proyectos
required=True)
NameError: name 'project' is not defined
根据消息,名称项目未定义,但我使用了与 res.partner 相同的方法,它对我有用。 我究竟做错了什么?请帮助我!
只需将此更改为 project.id
至 project_id
。
第一个语法 python 将尝试从对象 project
中检索属性 id
这就是他抱怨它的原因。
您正在定义一个 Many2one 单字段,因此名称不能包含特殊字符。它是一个标识符,他必须遵循所有编程语言中的规则,比如它不能以数字开头....等等