代码之家  ›  专栏  ›  技术社区  ›  Danil

如何从model\u utils三重选择中获取密钥?

  •  0
  • Danil  · 技术社区  · 6 年前

    如果我有一些选择:

    In [1]: from model_utils import Choices
    
    In [2]: CHOICES = Choices(
       ...:         (1, 'somekey', 'The long title'),
       ...:     )
    
    In [3]: CHOICES[1]
    Out[3]: 'The long title'
    

    somekey 钥匙? This answer 不适合我。

    In [10]: {v: k for k, v in dict(CHOICES).iteritems()}
    Out[10]: {'The long title': 1}
    
    1 回复  |  直到 6 年前
        1
  •  2
  •   Danil    6 年前

    解决方案是:

    In [11]: {v: k for k, v in CHOICES._identifier_map.items()}
    Out[11]: {1: 'somekey'}