【问题标题】:How can I save and restore my records in Odoo?如何在 Odoo 中保存和恢复我的记录?
【发布时间】:2020-07-22 12:16:58
【问题描述】:

从客户模块导出或保存记录以便在我们遇到 odoo 问题时可以重复使用它们的最佳方式是什么? - 如果您卸载并重新安装odoo,您创建的记录就会消失。

对我来说,在 UI 中不使用 EXPORT BUTTON 的情况下找到解决方案很重要。由于我们有这样的lists,它不适用于经典按钮。

非常感谢您。

【问题讨论】:

    标签: python sql database postgresql odoo


    【解决方案1】:

    首先我建议您进行备份。您可以在 odoo 中创建备份 登录页面或网址:

    http://localhost:8069/web/database/selector
    

    或者,您可以从终端创建数据库转储:

    $ pg_dump your_backup_database -Fc > your_backup_database.dump
    

    您可以通过从 Odoo UI 加载备份或直接使用以下命令将备份加载到 postgres 中来恢复数据库:

    $ pg_restore -d your_tmp_database your_database.dump
    

    现在,要在新的 Odoo 安装中取回您的数据,您可以使用 sql 查询将旧数据导出到 CSV 文件,然后将其插入到新数据库中。示例:

    • 要导出您的客户:
    --sql
    COPY (
        SELECT * 
        FROM customers
    ) TO '/your_path/customers.csv' WITH CSV HEADER DELIMITER ';' ENCODING 'your_encoding';
    
    • 恢复您的客户:
    -- sql
    CREATE TABLE IF NOT EXISTS temp_customers(
      id INTEGER,
      name TEXT
    );
    
    \COPY temp_customers(id, name) FROM '/path_to_the_copy/old_customers.csv' DELIMITER ';' CSV HEADER;
    
    INSERT INTO customers (id, name)
    SELECT id, name
    FROM temp_customers;
    
    

    注意:注意其他表中引用该表的记录, 您还应该导出这些记录以保持一致性。

    【讨论】:

    • 非常感谢!我们发现了扩展的导出模式,您可以在其中通过模板保存某些字段的更多选项。奇怪的是,我们完全错过了:D
    猜你喜欢
    • 1970-01-01
    • 2020-12-05
    • 2018-09-16
    • 1970-01-01
    • 2019-05-25
    • 2016-05-01
    • 2022-11-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多