如何获得选择字段的字符串?

Alp*_*aki 1 python-2.7 odoo-8 odoo-9 odoo-10

我的模块中有以下选择字段,我想获取选择字段的字符串值。假设用户选择'o'我要打印,O - Original请为我提供任何更好的解决方案。

type = fields.Selection([
                        ('o', 'O - Original'),
                        ('a', 'A - Amended')],
                         string="Is this an Original Invoice or Amended Invoice ?"
Run Code Online (Sandbox Code Playgroud)

我有这个解决方案

def get_string_value_of_selection():
    if self.type == 'o':
        value = "O - Original", 
    if self.type == 'a':
        value = "A - Amended"

    print "value = ",value
Run Code Online (Sandbox Code Playgroud)

输出

如果用户选择 o

value = O - Original
Run Code Online (Sandbox Code Playgroud)

Alp*_*aki 5

可以将其归档如下。在odoo 9中工作,在10中没有尝试过

print dict(self._fields['type'].selection).get(self.type)
Run Code Online (Sandbox Code Playgroud)

如果用户选择 o

输出 O-原始