微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在现有的 odoo 模块中添加 Chatter

如何解决如何在现有的 odoo 模块中添加 Chatter

我正在尝试在车队车辆服务日志添加聊天记录 当我尝试更新负责添加聊天的继承模块时,它给了我这个错误

这是模型:

# -*- coding: utf-8 -*-
from odoo import models,fields,api

class Fleet_Chatter_service(models.Model):
    _name = 'fleet.chatter.service'
    _inherit = ['fleet.vehicle.log.services','mail.thread','ir.needaction_mixin']
    _description = "fleet chatter in cost and service"

这是视图:

<odoo>
    <record model="ir.ui.view" id="odt_fleet_service_chatter_form">
      <field name="name">odt.fleet.chatter.service</field>
      <field name="model">fleet.chatter.service</field>
      <field name="inherit_id" ref="fleet.fleet_vehicle_log_services_view_form"/>
      <field name="arch" type="xml">
          <xpath expr="//form/sheet" position="after">
              <div class="oe_chatter">
                  <field name="message_follower_ids" widget="mail_followers"/>
                  <field name="activity_ids" widget="mail_activity"/>
                  <field name="message_ids" widget="mail_thread" />
              </div>
          </xpath>
      </field>
    </record>
</odoo>

这是错误

错误

odoo 服务器错误

回溯(最近一次调用最后一次):文件 "C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_ui_view.py",第 394 行,在 check_xml 中 self.postprocess_and_fields(view.model,view_doc,view.id) 文件 "C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_ui_view.py",第 961 行,在 postprocess_and_fields 中 self.raise_view_error(('Model not found: %(model)s') % dict(model=model),view_id) 文件 "C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_ui_view.py",第 614 行,在 raise_view_error 中 引发 ValueError(message) ValueError:找不到模型:fleet.chatter.service

错误上下文:查看 odt.fleet.chatter.service [view_id: 2990,xml_id:不适用,模型:fleet.chatter.service,parent_id:494]

在处理上述异常的过程中,又发生了一个异常:

回溯(最近一次调用最后一次):文件 “C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py”,第 712 行,解析中 self._tag_root(de) 文件“C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py”,第 674 行,在 _tag_root f(rec) 文件“C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py”,第 577 行,在 _tag_record 中 record = model._load_records([data],self.mode == 'update') 文件 "C:\odt_work\zawaj\odoo-13\odoo\models.py",line 4168,in _load_records record = self._load_records_create([data['values'] for data in to_create]) 文件“C:\odt_work\zawaj\odoo-13\odoo\models.py”,行 4082,在_load_records_create return self.create(values) File "",line 2,in create File "C:\odt_work\zawaj\odoo-13\odoo\api.py",line 336,in _model_create_multi 返回创建(self,arg)文件“C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_ui_view.py”, 第 475 行,在创建中 return super(View,self).create(vals_list) File "",in create File “C:\odt_work\zawaj\odoo-13\odoo\api.py”,第 336 行,在 _model_create_multi return create(self,arg) File "C:\odt_work\zawaj\odoo-13\odoo\models.py",line 3843,in create fields[0].determine_inverse(batch_recs) 文件“C:\odt_work\zawaj\odoo-13\odoo\fields.py”,第 1155 行,在 确定_逆 getattr(records,self.inverse)() 文件“C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_ui_view.py”, 第 299 行,在 _inverse_arch 中 view.write(data) 文件 "C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_ui_view.py",第 493 行,写入 res = super(View,self).write(self._compute_defaults(vals)) File "C:\odt_work\zawaj\odoo-13\odoo\models.py",line 3632,in write real_recs._validate_fields(vals,inverse_fields) 文件“C:\odt_work\zawaj\odoo-13\odoo\models.py”,第 1206 行,在 _validate_fields 检查(自我)文件“C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_ui_view.py”, 第 396 行,在 check_xml 中 raise ValidationError("%s\n\n%s" % (("验证视图时出错"),tools.ustr(e))) odoo.exceptions.ValidationError: ('Error while 正在验证视图\n\n找不到模型:fleet.chatter.service\n\n错误 上下文:\n查看 odt.fleet.chatter.service\n[view_id: 2990,xml_id: 不适用,模型:fleet.chatter.service,parent_id:494]',无)

在处理上述异常的过程中,又发生了一个异常:

回溯(最近一次调用最后一次):文件 “C:\odt_work\zawaj\odoo-13\odoo\http.py”,第 624 行,在 _handle_exception return super(JsonRequest,self)._handle_exception(exception) File "C:\odt_work\zawaj\odoo-13\odoo\http.py",line 310,in _handle_exception 提高 pycompat.reraise(type(exception),exception,sys.exc_info()[2]) 文件 “C:\odt_work\zawaj\odoo-13\odoo\tools\pycompat.py”,第 14 行,在 再加注 提升值文件“C:\odt_work\zawaj\odoo-13\odoo\http.py”,第 669 行,在调度中 result = self._call_function(**self.params) 文件“C:\odt_work\zawaj\odoo-13\odoo\http.py”,第350行,在_call_function中 返回checked_call(self.db,*args,**kwargs) File "C:\odt_work\zawaj\odoo-13\odoo\service\model.py",line 94,in wrapper 返回 f(dbname,**kwargs) 文件“C:\odt_work\zawaj\odoo-13\odoo\http.py”,第 339 行,在checked_call result = self.endpoint(*a,**kw) File "C:\odt_work\zawaj\odoo-13\odoo\http.py",line 915,in call return self.method(*args,line 515,in response_wrap response = f(*args,**kw) 文件“c:\odt_work\zawaj\odoo-13\addons\web\controllers\main.py”,第 1343 行, 在 call_button action = self._call_kw(model,method,args,kwargs) 文件“c:\odt_work\zawaj\odoo-13\addons\web\controllers\main.py”,第 1331 行, 在_call_kw return call_kw(request.env[model],kwargs) File "C:\odt_work\zawaj\odoo-13\odoo\api.py",line 387,in call_kw 结果 = _call_kw_multi(method,model,kwargs) 文件 "C:\odt_work\zawaj\odoo-13\odoo\api.py",line 374,in _call_kw_multi result = method(recs,**kwargs) File "",in button_immediate_upgrade 文件 "C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_module.py",行 72、在check_and_log中 返回方法(self,**kwargs) File "C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_module.py",line 第634话 返回 self._button_immediate_function(type(self).button_upgrade) 文件 "C:\odt_work\zawaj\odoo-13\odoo\addons\base\models\ir_module.py",第 573 行,在 _button_immediate_function 中 modules.registry.Registry.new(self._cr.dbname,update_module=True) 文件“C:\odt_work\zawaj\odoo-13\odoo\modules\registry.py”,第 86 行,在 新的 odoo.modules.load_modules(registry._db,force_demo,status,update_module) 文件 “C:\odt_work\zawaj\odoo-13\odoo\modules\loading.py”,第 419 行,在 加载模块 强制、状态、报告、loaded_modules、update_module、models_to_check) 文件 “C:\odt_work\zawaj\odoo-13\odoo\modules\loading.py”,第 315 行,在 load_marked_modules perform_checks=perform_checks,models_to_check=models_to_check 文件“C:\odt_work\zawaj\odoo-13\odoo\modules\loading.py”,第 225 行,在 加载模块图 load_data(cr,idref,mode,kind='data',package=package,report=report) 文件 “C:\odt_work\zawaj\odoo-13\odoo\modules\loading.py”,第 68 行,在 加载数据 tools.convert_file(cr,package.name,filename,noupdate,kind,report) 文件 “C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py”,第 736 行,在 转换文件 convert_xml_import(cr,module,fp,report) 文件 "C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py",line 803,in convert_xml_import obj.parse(doc.getroot()) 文件“C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py”,第721行,解析中 exc_info[2] 文件“C:\odt_work\zawaj\odoo-13\odoo\tools\pycompat.py”,第 13 行,在 再加注 提高 value.with_traceback(tb) 文件“C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py”,第 712 行,解析中 self._tag_root(de) 文件“C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py”,第 674 行,在 _tag_root f(rec) 文件“C:\odt_work\zawaj\odoo-13\odoo\tools\convert.py”,第 577 行,在 _tag_record 中 record = model._load_records([data],tools.ustr(e))) odoo.tools.convert.ParseError: "同时出错 验证视图

未找到模型:fleet.chatter.service

Error context:
View `odt.fleet.chatter.service`
[view_id: 2990,xml_id: n/a,model: fleet.chatter.service,parent_id: 494]
None" while parsing file:/c:/odt_work/zawaj/zawaj_custom/odt_fleet_chatter/views/chatter_service_view.xml:1,near
<odoo>
    <record model="ir.ui.view" id="odt_fleet_service_chatter_form">
      <field name="name">odt.fleet.chatter.service</field>
      <field name="model">fleet.chatter.service</field>
        <field name="priority" eval="50"/>
      <field name="inherit_id" ref="fleet.fleet_vehicle_log_services_view_form"/>
      <field name="arch" type="xml">
          <xpath expr="//form/sheet" position="after">
              <div class="oe_chatter">
                  <field name="message_follower_ids" widget="mail_followers"/>
                  <field name="activity_ids" widget="mail_activity"/>
                  <field name="message_ids" widget="mail_thread"/>
              </div>
          </xpath>
      </field>
    </record>
</odoo> 

解决方法

尝试继承“mail.activity.mixin”,因为它会添加您在视图中使用的“activity_ids”字段。

{
    "Version": "2012-10-17","Statement": [
        {
            "Sid": "VisualEditor0","Effect": "Allow","Action": "s3:PutObject","Resource": "arn:aws:s3:::my-bucket/*"
        }
    ]
}

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。