如何在 Odoo 10 中翻译 python 上写为文字字符串的术语?

How to translate a term written as a literal string on python in Odoo 10?

我有一个方法定义了 returns In stockOut of stock 术语:

def _compute_availability(self):
    for record in self:
        if record.product_uom_qty <= record.product_id.qty_available:
            record.availability = 'In stock'
        else:
            record.availability = 'Out of stock'

QWeb 报表中使用了此方法。

我想将这些术语翻译成另一种语言(西班牙语)但是当我导出 .po 文件时没有这些术语的定义(我猜是因为模型的一部分而不是 XML 自己报告)。

您如何为模型方法中硬编码的术语定义翻译?

看看下划线:

from odoo.tools.translate import _

# [...]

    def _compute_availability(self):
        for record in self:
            if record.product_uom_qty <= record.product_id.qty_available:
                record.availability = _('In stock')
            else:
                record.availability = _('Out of stock')