如何从列表中的 django 模型中获取选择字段?

swa*_*ami 8 python django django-models

我有一个具有选择字段的模型。我想获取列表中的选择选项。

我怎样才能做到这一点?

OPTIONS = (
    ('COOL', 'COOL'),
    ('WARM', 'WARM'),
)
class My_Model(models.Model):
     options = models.CharField(max_length=20, choices=OPTIONS, default=None,blank=True, null=True)
Run Code Online (Sandbox Code Playgroud)

我想要像 ['COOL','WARM'] 这样的列表中的选项值,如何实现它,我尝试了类似 My_Model.options 的东西,但它不起作用。

Wil*_*sem 13

您可以通过以下方式获取数据:

>>> My_Model.options.field.choices
(('COOL', 'COOL'), ('WARM', 'WARM'))
Run Code Online (Sandbox Code Playgroud)

因此,您可以通过以下方式获取密钥列表:

>>> [c[0] for c in My_Model.options.field.choices]
['COOL', 'WARM']
Run Code Online (Sandbox Code Playgroud)

c[1]如果您想要该值(为该选择呈现的部分),请使用。