【问题标题】:Django Model Into Dictionary ComprehensionDjango 模型转字典理解
【发布时间】:2015-03-03 10:35:35
【问题描述】:

假设我有一个带有名称字段的模型:

class Category(models.Model):
    name = models.CharField(max-length=50)

我想建立一个所有类别的字典,名称为键,实例为值。

还有比这更简单的方法吗?

category_map = {name: instance for (name, instance)
                in [(c.name, c) for c in Category.objects.all()]}

我知道 Django 中有 in_bulk API:

category_map = Category.objects.in_bulk()

但是它使用主键,我没有看到使用不同字段的方法。

我正在使用 Django 1.6.5。

【问题讨论】:

    标签: python django


    【解决方案1】:

    您不需要第二个for 循环:

    category_map = {c.name: c for c in Category.objects.all()}
    

    【讨论】:

      猜你喜欢
      • 2021-11-24
      • 2021-11-01
      • 1970-01-01
      • 1970-01-01
      • 2018-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-24
      相关资源
      最近更新 更多