【问题标题】:Convert a Django Model Field Choices into a JSON将 Django 模型字段选择转换为 JSON
【发布时间】:2016-04-10 23:29:43
【问题描述】:

我需要转换一个模型选择元组,就像 Django 文档中的这个:

YEAR_IN_SCHOOL_CHOICES = (
('FR', 'Freshman'),
('SO', 'Sophomore'),
('JR', 'Junior'),
('SR', 'Senior'),
)

像这样进入一个 JSON 对象:

[{"id": 'FR', "year": 'Freshman'}, 
 {"id": 'SO', "year": 'Sophomore'},
 {"id": 'JR', "year": 'Junior'},
 {"id": 'SR', "year": 'Senior'}]

这是一个非常简单的转换,在使用表单时非常常见,但我在 Django 中找不到任何开箱即用的自动功能。我想我在这里遗漏了一些东西。

【问题讨论】:

    标签: python json forms django-models


    【解决方案1】:

    为了得到你想要的格式,你必须做列表理解:

    [{'id': year[0], 'year': year[1]} for year in YEAR_IN_SCHOOL_CHOICES]
    

    您也可以使用dict(YEAR_IN_SCHOOL_CHOICES) 作为“内置”的方式来做到这一点,但它会产生:

    {'SR': 'Senior', 'FR': 'Freshman', 'SO': 'Sophomore', 'JR': 'Junior'}
    

    【讨论】:

      猜你喜欢
      • 2015-03-22
      • 2016-07-22
      • 2016-03-10
      • 1970-01-01
      • 2016-04-21
      • 1970-01-01
      • 2021-08-17
      • 2012-07-14
      • 2014-08-17
      相关资源
      最近更新 更多