这个表达是做什么的?默认= lambda自:_('New'))

时间:2018-09-19 04:31:06

标签: python orm odoo

我正在研究Odoo Erp,在代码分析过程中,我在字段定义中找到了此表达式

default=lambda self: _('New')

确切的表达是:

reference = fields.Char(string='Schedule Reference', required=True, copy=False, readonly=True, states={'draft': [('readonly', False)]}, index=True, default=lambda self: _('New'))

我想知道_('New')是什么。

1 个答案:

答案 0 :(得分:2)

该字段默认值将用于创建新记录,并且它接受直接值或要调用的函数。使用函数是一种能够使用上下文值(例如当前用户的lang)以便能够返回更准确的值的方法。

Odoo中的_函数是翻译快捷方式函数,因此_('New')是返回'New'字符串翻译的一种方法,并且由于_函数用于当前用户上下文,因此可以返回用户定义的lang的值的转换(如果可用)。