虚拟机版本ubuntu-22.10,本人用的是这个版本的ubuntu系统,也可以使用最新版本的。准备工作打开虚拟机,ubuntu系统。进入终端。更新系统sudoapt-getupdatesudoapt-getupgrade配置服务器安全sudoapt-getinstallopenssh-serverfail2ban创建系统用户odoo16创建一个系统用户以确保安全和履行Odoo角色。该用户只能有限地访问Odoo中的某些文件和位置。之后,我们将限制此用户对链接到Odoo的所有文件和目录的访问sudoadduser--system--home=/opt/odoo16--groupodoo16安装所
虚拟机版本ubuntu-22.10,本人用的是这个版本的ubuntu系统,也可以使用最新版本的。准备工作打开虚拟机,ubuntu系统。进入终端。更新系统sudoapt-getupdatesudoapt-getupgrade配置服务器安全sudoapt-getinstallopenssh-serverfail2ban创建系统用户odoo16创建一个系统用户以确保安全和履行Odoo角色。该用户只能有限地访问Odoo中的某些文件和位置。之后,我们将限制此用户对链接到Odoo的所有文件和目录的访问sudoadduser--system--home=/opt/odoo16--groupodoo16安装所
Odoo安装/更新模块原理Odoo每次安装/更新模块时,会进行以下几步处理:1.判断是否需要创建表,如果需要创建且表不存在,则进行表的创建(不进行字段的创建);2.获取该表中已经存在的字段;3.获取odoo模型中的所有字段;4.遍历模型的所有字段,对需要存储的字段,如果字段在数据库已存在,则进行字段及字段属性的更新;如果字段在数据库中不存在,则进行字段的创建,字段属性的更新;5.如果新建了字段,且为compute字段并store=True,则将compute方法加入任务队列,进行历史数据的计算存储;因为调用的是Odoo的ORM,会导致计算存储时间过长; 解决方案Odoo安装/更新模块时间过长解
Odoo安装/更新模块原理Odoo每次安装/更新模块时,会进行以下几步处理:1.判断是否需要创建表,如果需要创建且表不存在,则进行表的创建(不进行字段的创建);2.获取该表中已经存在的字段;3.获取odoo模型中的所有字段;4.遍历模型的所有字段,对需要存储的字段,如果字段在数据库已存在,则进行字段及字段属性的更新;如果字段在数据库中不存在,则进行字段的创建,字段属性的更新;5.如果新建了字段,且为compute字段并store=True,则将compute方法加入任务队列,进行历史数据的计算存储;因为调用的是Odoo的ORM,会导致计算存储时间过长; 解决方案Odoo安装/更新模块时间过长解
添加修饰我们的房地产模块现在从商业角度来看是有意义的。我们创建了特定的视图,添加了几个操作按钮和约束。然而,我们的用户界面仍然有点粗糙。我们希望为列表视图添加一些颜色,并使一些字段和按钮有条件地消失。例如,当房产已出售或取消时,“已售出”和“取消”按钮应消失,因为此时不再允许更改状态。参考:文档关联的主题可以查看Views.内联视图(InlineViews)在房地产模块中,我们为房产添加了一个报价列表。我们通过以下代码简单地添加了offer_ids字段:该字段使用estate.properties.offer的特定视图。在某些情况下,我们希望定义一个仅在表单视图上下文中使用的特定列表视图。例如
添加修饰我们的房地产模块现在从商业角度来看是有意义的。我们创建了特定的视图,添加了几个操作按钮和约束。然而,我们的用户界面仍然有点粗糙。我们希望为列表视图添加一些颜色,并使一些字段和按钮有条件地消失。例如,当房产已出售或取消时,“已售出”和“取消”按钮应消失,因为此时不再允许更改状态。参考:文档关联的主题可以查看Views.内联视图(InlineViews)在房地产模块中,我们为房产添加了一个报价列表。我们通过以下代码简单地添加了offer_ids字段:该字段使用estate.properties.offer的特定视图。在某些情况下,我们希望定义一个仅在表单视图上下文中使用的特定列表视图。例如
约束(Constraints)上一章介绍了向模型中添加一些业务逻辑的能力。我们现在可以将按钮链接到业务代码,但如何防止用户输入错误的数据?例如,在我们的房地产模块中,没有什么可以阻止用户设置负预期价格。odoo提供了两种设置自动验证恒定式的方法:Python约束andSQL约束。SQL参考:与此主题相关的文档可以查看Models和PostgreSQL文档我们通过模型属性_sql_constraints来定义SQL约束,该属性被赋值为一个包含三元组(name,sql_definition,message)的列表,其中name为一个合法的SQL约束名称,sql_definition为表约束表达式,
约束(Constraints)上一章介绍了向模型中添加一些业务逻辑的能力。我们现在可以将按钮链接到业务代码,但如何防止用户输入错误的数据?例如,在我们的房地产模块中,没有什么可以阻止用户设置负预期价格。odoo提供了两种设置自动验证恒定式的方法:Python约束andSQL约束。SQL参考:与此主题相关的文档可以查看Models和PostgreSQL文档我们通过模型属性_sql_constraints来定义SQL约束,该属性被赋值为一个包含三元组(name,sql_definition,message)的列表,其中name为一个合法的SQL约束名称,sql_definition为表约束表达式,
文章目录前言安装步骤1.将Ubuntu升级到最新2.Postgresql数据库安装3.Odoo服务安装4.服务启动/停止/重启5.开启防火墙6.查看服务是否启动7.Odoo及PostgreSQL安装目录结构8.Odoonginx80端口极简配置8.1.安装nginx8.2确定nginx正常8.3修改nginx参数8.4重启nginx服务使用配置生效前言本文将指导你在广泛使用的Linux发行版Ubuntu20.4上安装Odoo服务。本文部署环境:Ubuntu20.04+PostgreSql12+Odoo16+Nginx1.8。整个部署过程预计需花费30分钟左右。安装步骤1.将Ubuntu升级到最
文章目录前言安装步骤1.将Ubuntu升级到最新2.Postgresql数据库安装3.Odoo服务安装4.服务启动/停止/重启5.开启防火墙6.查看服务是否启动7.Odoo及PostgreSQL安装目录结构8.Odoonginx80端口极简配置8.1.安装nginx8.2确定nginx正常8.3修改nginx参数8.4重启nginx服务使用配置生效前言本文将指导你在广泛使用的Linux发行版Ubuntu20.4上安装Odoo服务。本文部署环境:Ubuntu20.04+PostgreSql12+Odoo16+Nginx1.8。整个部署过程预计需花费30分钟左右。安装步骤1.将Ubuntu升级到最