diff --git a/app_base_chinese/views/res_partner_views.xml b/app_base_chinese/views/res_partner_views.xml index 440ceab3..297978e4 100644 --- a/app_base_chinese/views/res_partner_views.xml +++ b/app_base_chinese/views/res_partner_views.xml @@ -147,7 +147,7 @@ - +
  • Credit:
  • diff --git a/app_common/models/__init__.py b/app_common/models/__init__.py index c6153ef1..736cc270 100644 --- a/app_common/models/__init__.py +++ b/app_common/models/__init__.py @@ -22,4 +22,4 @@ # http://www.sunpop.cn/odoo10_developer_document_offline/ # description: -from . import models +from . import base diff --git a/app_common/models/base.py b/app_common/models/base.py new file mode 100644 index 00000000..1639cde7 --- /dev/null +++ b/app_common/models/base.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- +from odoo import models, fields, api, _ + + +class Base(models.AbstractModel): + _inherit = 'base' + + @api.model + def _app_get_m2o_default(self, fieldname, domain=[]): + if hasattr(self, fieldname) and self._fields[fieldname].type == 'many2one': + if self._context.get(fieldname) or self._context.get('default_%s' % fieldname): + return self._context.get(fieldname) or self._context.get('default_%s' % fieldname) + else: + rec = self.env[self._fields[fieldname].comodel_name].search(domain, limit=1) + return rec.id if rec else False + return False diff --git a/app_common/models/models.py b/app_common/models/models.py deleted file mode 100644 index 965f1a38..00000000 --- a/app_common/models/models.py +++ /dev/null @@ -1,25 +0,0 @@ -# -*- coding: utf-8 -*- -from odoo import models, fields, api, _ - - -class BaseModelExtend(models.AbstractModel): - _name = 'basemodel.extend' - _description = 'Base Extend for Sunpop' - - def _register_hook(self): - ''' - Register method in BaseModel - 如果 该 fieldname 是m2o的,那么如果context没值,就用该模型第一个 - ''' - @api.model - def _app_get_m2o_default(self, fieldname): - if hasattr(self, fieldname) and self._fields[fieldname].type == 'many2one': - if self._context.get(fieldname) or self._context.get('default_%s' % fieldname): - return self._context.get(fieldname) or self._context.get('default_%s' % fieldname) - else: - rec = self.env[self._fields[fieldname].comodel_name].search([], limit=1) - return rec.id if rec else False - return False - - models.BaseModel._app_get_default = _app_get_m2o_default - return super(BaseModelExtend, self)._register_hook()