上下文数据

来自Odoo V
跳转至: 导航搜索

上下文是一个包含session数据的字典,它可以被客户端的用户接口和服务器端的ORM与业务逻辑使用。

在客户端,它可以将信息从一个视图传输到另一个视图。比如当前视图的有效的记录ID,通过一个连接或按钮跳转到另一个视图后,它可以作为默认值被使用。

在服务器端,一些记录的字段值可以通过上下文被本地设置提供。特别的lang值是影响翻译的字段。上下文可以在服务器端提供信号代码。比如,active_test设置为False时,ORM的search()方法的将不会筛选出不活动的记录。

来自网络客户端的上下文,初始化的是以下这样的:

{'lang': 'en_US', 'tz': 'Europe/Brussels', 'uid': 1}

lang是用户使用的语言,tz是时区信息,uid是当前用户ID

从当前form视图通过连接或则按钮打开一个form视图时,active_id属性会被添加到上下文中,并且包含当前的记录ID。在list视图中,上下文中还包含一个active_ids属性,它包含当前list视图中,已选择的记录的ID的列表。

在客户端,上下文可以通过属性default_default_search_*来设置目标视图的默认值或默认筛选条件。例如:

{'default_user_id': uid}

在目标视图中,我们想filter_my_tasks筛选器默认有效,我们可以这样做:

{'default_search_filter_my_tasks': 1}
上一节:上下文和域 下一节:域表达式