Django:替换ValueQuerySet中的列

时间:2014-08-15 06:12:25

标签: python django

我的django项目数据库的组织方式如下:

Student.objects.values('name', 'schoolId') = [ {'name': 'Bob',   'schoolId': 5},
                                               {'name': 'Alice', 'schoolId': 2} ]
School.objects.values('schoolId', 'name')  = [ {'schoolId': 2,   'name': 'East High'},
                                               {'schoolId': 5,   'name': 'West High'} ]

我想生成这样的东西:

foo = [ {'name': 'Bob',   'school': 'West High'},
        {'name': 'Alice', 'school': 'East High'} ]

基本上,它遍历第一个ValueQuerySet,用('schoolId', int)替换所有('school', schoolNameStr)对。逻辑上,它可以通过搜索schoolId表中的School值并返回每个条目的相应name属性来实现此目的。

我知道并且可以使用for循环和filter来执行此操作。但是我怎样才能更快地实现它?

0 个答案:

没有答案