如何防止在安装 Odoo 模块期间进行字段计算?

问题描述 投票:0回答:1

我有这样的情况:

  • 我想安装一个继承模块
    account
    并在
    account.move
    account.move.line
    模型中添加一个字段的模块。
  • 我有超过 500k 的该型号记录
  • 现场计算使得安装应用程序需要花费大量时间。

我想要:

  • 第一次跳过现有记录的计算,以便我可以决定何时进行。

安装前在DB中创建字段。

odoo
1个回答
0
投票

如果您在数据库上创建列,Odoo 会跳过现有记录的计算。

简单案例:现有模型和字段是 Char / Integer。

如果模型已经存在并且字段是 char,那么您只需更改表并将列添加为 varchar 或 integer。

如何获得查询?

  • 在新数据库中安装模块的依赖项。

odoo-bin -i your_module_dependencies -d new_db --init-db --stop-after-init

  • 使用 log sql 在新数据库中安装模块

odoo-bin -i your_module -d new_db --log-level=debug_sql --logfile logfile.txt --stop-after-init

  • 然后在 logfile.txt 中,您将拥有创建表和字段所需的查询。在您的数据库中执行。不要忘记约束、索引和其他需要的东西。

2024-02-08 15:17:10,002 234036 DEBUG odoo5 odoo.sql_db: [3.057 ms] query:  CREATE TABLE "your_model_table"....

  • 在数据库中安装模块。
© www.soinside.com 2019 - 2024. All rights reserved.