You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Odoo 16添加自定义模块报错:Model 'stock.production.lot'不存在

解决Odoo 16中flower_shop模块激活失败问题

问题描述

已完成Odoo 16在PyCharm的安装与配置,将自定义flower_shop模块放入addons目录后,模块在应用列表中显示,但无法激活,触发以下报错:

Traceback (most recent call last):
  File "D:\odoo\odoo-16.0\odoo\http.py", line 1584, in _serve_db
    return service_model.retrying(self._serve_ir_http, self.env)
  File "D:\odoo\odoo-16.0\odoo\service\model.py", line 134, in retrying
    result = func()
  File "D:\odoo\odoo-16.0\odoo\http.py", line 1613, in _serve_ir_http
    response = self.dispatcher.dispatch(rule.endpoint, args)
  File "D:\odoo\odoo-16.0\odoo\http.py", line 1810, in dispatch
    result = self.request.registry['ir.http']._dispatch(endpoint)
  File "D:\odoo\odoo-16.0\odoo\addons\base\models\ir_http.py", line 149, in _dispatch
    result = endpoint(**request.params)
  File "D:\odoo\odoo-16.0\odoo\http.py", line 699, in route_wrapper
    result = endpoint(self, *args, **params_ok)
  File "d:\odoo\odoo-16.0\addons\web\controllers\dataset.py", line 46, in call_button
    action = self._call_kw(model, method, args, kwargs)
  File "d:\odoo\odoo-16.0\addons\web\controllers\dataset.py", line 33, in _call_kw
    return call_kw(request.env[model], method, args, kwargs)
  File "D:\odoo\odoo-16.0\odoo\api.py", line 461, in call_kw
    result = _call_kw_multi(method, model, args, kwargs)
  File "D:\odoo\odoo-16.0\odoo\api.py", line 448, in _call_kw_multi
    result = method(recs, *args, **kwargs)
  File "<decorator-gen-74>", line 2, in button_immediate_install
  File "D:\odoo\odoo-16.0\odoo\addons\base\models\ir_module.py", line 76, in check_and_log
    return method(self, *args, **kwargs)
  File "D:\odoo\odoo-16.0\odoo\addons\base\models\ir_module.py", line 491, in button_immediate_install
    return self._button_immediate_function(type(self).button_install)
  File "D:\odoo\odoo-16.0\odoo\addons\base\models\ir_module.py", line 615, in _button_immediate_function
    registry = modules.registry.Registry.new(self._cr.dbname, update_module=True)
  File "<decorator-gen-14>", line 2, in new
  File "D:\odoo\odoo-16.0\odoo\tools\func.py", line 87, in locked
    return func(inst, *args, **kwargs)
  File "D:\odoo\odoo-16.0\odoo\modules\registry.py", line 90, in new
    odoo.modules.load_modules(registry, force_demo, status, update_module)
  File "D:\odoo\odoo-16.0\odoo\modules\loading.py", line 487, in load_modules
    processed_modules += load_marked_modules(cr, graph,
  File "D:\odoo\odoo-16.0\odoo\modules\loading.py", line 371, in load_marked_modules
    loaded, processed = load_module_graph(
  File "D:\odoo\odoo-16.0\odoo\modules\loading.py", line 196, in load_module_graph
    model_names = registry.load(cr, package)
  File "D:\odoo\odoo-16.0\odoo\modules\registry.py", line 247, in load
    model = cls._build_model(self, cr)
  File "D:\odoo\odoo-16.0\odoo\models.py", line 615, in _build_model
    raise TypeError("Model %r does not exist in registry." % name)
TypeError: Model 'stock.production.lot' does not exist in registry. 

环境信息

  • 最新版PyCharm
  • Odoo 16
  • Python 3.10.9

解决方案

报错核心是stock.production.lot模型未找到,该模型属于Odoo官方的库存模块,问题出在模块依赖未正确处理,按以下步骤解决:

  1. 检查并修复模块依赖
    打开flower_shop模块根目录下的__manifest__.py文件,找到depends字段,确认是否包含'stock'。如果没有,添加该依赖:

    'depends': ['base', 'stock'],
    
  2. 安装库存模块
    如果__manifest__.py已声明stock依赖,先在Odoo应用列表中搜索并安装「库存」模块,完成后再尝试激活flower_shop模块。

  3. 更新应用列表
    修改依赖后,回到Odoo应用页面,点击「更新应用列表」按钮,确保系统识别到模块的最新依赖配置。

内容的提问来源于stack exchange,提问作者Krakalien

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 23:47:36