Odoo产品分析 (一) -- 一切为零

查看Odoo产品分析系列—-目录

1. 默认数据库

声明在先
本系列文档(Odoo产品分析)整理来自本人对该ERP的理解,并结合文档Working-with-Odoo-10-Second-Edition.pdf进行归纳总结,其中也有少量内容来自网络搜索,若侵犯到您的产权,请联系。

**

本人也接受odoo业务实施,欢迎联系

**

当创建了 一个新的数据库时,共有105个原始的时数据表
原始数据库
观察发现每一张表都有5个共同字段

字段字段说明
id关键字
create_date创建(第一次编写)该属性的时间
write_date最后一次修改该属性的时间
create_uid创建该创建(第一次编写)该属性的人
write_uid最后一次修改该属性的人

2. 默认模块

查看此时平台中默认安装了哪些模块,去掉“应用”筛选,并筛选已安装:
这里写图片描述这里写图片描述
共默认安装12个模块
这里写图片描述
由于暂时不知道这些模块目前是用来做什么的,放到之后安装了应用之后综合分析。

这些是odoo创建了数据库之后的默认信息。
接下来将对系统内部的业务和定制进行分析。

### 解决方案 当通过源码安装 Odoo 时,`odoo-bin` 是 Odoo 的入口脚本文件。如果发现缺少 `odoo-bin` 文件,通常是因为未正确完成某些前置步骤或环境配置不完整。以下是可能的原因及对应的解决方法: #### 1. **确认是否成功克隆完整的 Odoo 源码** 如果在执行 `git clone` 命令时未指定分支或者网络中断可能导致部分文件缺失。重新尝试克隆命令并确保使用正确的分支名称。 ```bash git clone https://github.com/odoo/odoo.git odoo16 -b 16.0 --depth=1 ``` 此外,在克隆完成后进入目录检查是否存在 `odoo-bin` 文件[^1]。 #### 2. **Python 虚拟环境和依赖项的安装** 在安装 Odoo 所需的 Python 依赖之前,建议创建虚拟环境以隔离系统环境中的其他包版本冲突。 创建并激活虚拟环境: ```bash python3 -m venv odoo-env source odoo-env/bin/activate ``` 接下来,安装所需的 Python 依赖项。可以通过以下命令实现: ```bash pip install -r requirements.txt ``` 这里的 `requirements.txt` 文件位于 Odoo 源码根目录下,包含了运行 Odoo 需要的所有 Python 包列表[^2]。 #### 3. **编译本地化支持和其他原生依赖** 对于些需要 C/C++ 编译的支持库(如 `lxml`, `psycopg2`),必须先安装系统的开发工具链以及相应的头文件和库文件。这些通常是通过操作系统的包管理器安装的。 在 Ubuntu 系统中,可以运行以下命令来安装必要的原生依赖: ```bash sudo apt-get update sudo apt-get install -y build-essential wget git python3-pip \ python3-dev python3-setuptools python3-virtualenv \ libpq-dev libsasl2-dev libldap2-dev libssl-dev libxml2-dev \ libxslt1-dev node-less npm ``` 完成后再次尝试安装 Python 依赖项[^3]。 #### 4. **手动生成 `odoo-bin` 文件** 如果经过以上步骤仍然无法找到 `odoo-bin` 文件,则可能是由于某些原因导致该文件未能自动生成。此时可以手动复制模板文件作为替代。 在 Odoo 源码仓库中,存在个名为 `setup.py` 的脚本用于构建项目结构。运行此脚本可能会帮助生成缺失的二进制文件: ```bash python3 setup.py build python3 setup.py develop ``` 若仍未解决问题,可以直接从已知正常工作的环境中提取份标准的 `odoo-bin` 并放置到当前工作目录下[^4]。 #### 5. **验证 PostgreSQL 是否正常工作** 确认数据库服务已经启动并且能够被访问。如果没有正确设置数据库连接参数也可能间接影响程序初始化过程从而造成异常行为。 --- ### 总结 按照上述流程逐排查问题根源所在,并采取相应措施修复即可恢复正常的 Odoo 开发环境搭建状态。最终目标是要让整个框架具备足够的条件去加载核心组件和服务端逻辑处理能力。 ```python import sys from pathlib import Path if __name__ == "__main__": prog_name = f"{Path(sys.argv[0]).name} custom_entry" print(f"Program Name: {prog_name}") ``` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值