zoukankan      html  css  js  c++  java
  • odoo开发笔记 -- 异常处理in resolve_deps field = model

    场景描述:

    更新代码,重启服务服务后,odoo后台报错,提示关键字:in resolve_deps field = model._fields[fname]  KeyError: 'entry_id'

    没有其他信息了,一头雾水,因为最近修改代码文件比较多,代码中用到字段“entry_id”的地方很多,一下不知是哪块的问题。。。

    如下图:

    从输出的异常日志可以看出,是模型依赖的问题。于是开始网上查询类似案例,找到如下一则:

    https://www.odoo.com/zh_CN/forum/help-1/

    跟自己情况对比后,发现还是有区别的!!!!

    哎,怎么整,笨办法,备份当前代码,回到到两天前修改的代码状态。

    添加代码,按照本地提交记录,一步步测试!幸运的是,添加了第一次提交的代码运行后,重启服务,出现了相同的异常!

    这样,处理范围缩小了,检查模型代码,原来_rec_name值写错了,写成了_rec_name = 'entry_id',而该模型下并没有相应字段entry_id,所以服务启动加载代码编译的时候,出现了上述错误。

    如下举例:这里_rec_name应该写成TEST模型中存在的字段:cop_msg_id, 即:_rec_name = 'cop_msg_id'

    class TEST(models.Model):
        """ 出错的模型 """
        _name = 'test.test888'
        _description = 'test888'
        _rec_name = 'entry_id'
    
        cop_msg_id = fields.Char(string="******")
        name = fields.Char(string="******", size=18)

    反思总结:

    1. 及时提交代码测试,养成完成一个功能模块就提交测试的习惯。

    2. 细心,在类似功能开发,为了省力,复制代码的时候,尤其注意。

  • 相关阅读:
    vue loading 插件编写与实战
    vue tab切换的几种方式
    IOS安卓常见问题
    vue.js 跨域的解决方法(转载)
    vue 根据设计稿rem适配
    vuex 文件夹目录整理
    vue项目优化之路由懒加载
    flutter 环境配置-01
    锚点 定位 导航 滑动
    居中 子元素无固定 宽高
  • 原文地址:https://www.cnblogs.com/hellojesson/p/11377474.html
Copyright © 2011-2022 走看看