Odoo 16 中的系统参数是存储和管理 Odoo 实例中各种配置设置的基本工具。这些设置会对您的业务流程和系统行为产生重大影响。在本指南中,我们将探讨如何在 Odoo 16 中创建和使用系统参数。
了解 Odoo 中的系统参数
在 Odoo 中,系统参数本质上是用于存储配置设置的模型。这些参数在维护 Odoo 实例的功能和行为方面起着至关重要的作用。一个关键用例是 web.base.url 参数,每次用户登录时 Odoo 都会检查该参数。假设用于登录的 URL 与保存的 web.base.url 不匹配,Odoo 会自动更新它。
在 Odoo 16 中创建系统参数
您可以通过用户界面或直接在模块内创建 Odoo 16 中的系统参数。
通过用户界面创建系统参数:
要通过用户界面创建系统参数,请按照以下步骤操作:
1.激活开发者模式:
2. 首先在 Odoo 中激活开发者模式。
访问系统参数:
* 导航到“设置”模块。
* 在“技术”部分下,找到并单击“系统参数”。
3.创建新的系统参数:
* 点击“创建”按钮添加新的系统参数。
* 填写以下字段:
*键:为参数分配唯一的标识符。
*值:输入与参数相关的值。
4.保存更改:
请记住单击“保存”以确认新系统参数的创建。
在模块内创建系统参数:
要在 Odoo 16 中的模块内直接创建系统参数,您可以在模块的 XML 文件中添加记录,如下所示:
<odoo>
<data noupdate="0">
<record id="auth_password_minlength" model="ir.config_parameter>
<field name="key">auth_password_minlength</field>
<field name="value">10</field>
</record>
</data>
</odoo>
在 Odoo 16 中使用系统参数
创建系统参数后,您可以利用它们以各种方式自定义 Odoo 16 实例:
1.本地化设置:
自定义日期格式、货币符号和时区以符合您企业的地理位置。
2.电子邮件配置:
定制电子邮件模板和服务器设置以保持一致的品牌和沟通。
3.发票和付款条款:
通过配置默认条款来简化发票和付款流程。
4.安全设置:
通过密码策略、访问控制和会话超时增强安全性。
在 Python 中访问系统参数
在 Odoo 16 中,您可以通过 Python 代码与系统参数交互。通过使用 get_param 方法,您可以检索与存储为系统参数的特定键关联的值。这些值最初存储为字符串,但您可以轻松地将它们转换为其他数据类型以满足您的要求。如果不存在具有指定键的记录,则结果将为 None。
from odoo import api, fields, models
class MyModel(models.Model):
_name = 'custom_module.my_model'
_description = 'Description'
@api.model
def read_system_parameter(self):
# Retrieve a system parameter value by its key
system_parameter_value = self.env['ir.config_parameter'].get_param(
'system_parameter_key', '')
# You can convert the value to other data types here if needed
return system_parameter_value
使用 Python 修改系统参数
除了读取系统参数外,您还可以使用 set_param 方法从 Odoo 模块修改其值。当您需要更新系统参数以反映 Odoo 16 实例中的更改时,这很有用。
from odoo import api, fields, models
class MyModel(models.Model):
_name = 'custom_module.my_model'
_description = 'Description'
@api.model
def update_system_parameter(self):
custom_value = 10 # Define the new value
# Use the set_param method to update the system parameter
self.env['ir.config_parameter'].set_param('system_parameter_key', custom_value)
在 Odoo 16 中处理多个 URL
如果您的 Odoo 16 实例可以从不同的 URL(例如 example_url_1.com 和 example_url_2.com)访问,则需要考虑与 web.base.url 相关的问题。当管理员从特定 URL 登录时,Odoo 将更新 web.base.url,这可能会导致复杂情况。
为了解决这个问题:
* 确保 Odoo 只能通过所需的 URL 访问。
* 通过将“web.base.url.freeze”设置为“True”来防止 Odoo 更改 web.base.url。
在 Odoo 16 中,系统参数提供了灵活性和定制性,可使软件适应您组织的独特需求。通过遵循以下步骤,您可以利用系统参数的强大功能来优化您的 Odoo 体验。