考虑:

>>>jr.operators.values_list('id')
[(1,), (2,), (3,)]

如何进一步简化以:

['1', '2', '3']

目的:

class ActivityForm(forms.ModelForm):
    def __init__(self, *args, **kwargs):
        super(ActivityForm, self).__init__(*args, **kwargs)
        if self.initial['job_record']:
            jr = JobRecord.objects.get(pk=self.initial['job_record'])

            # Operators
            self.fields['operators'].queryset = jr.operators

            # select all operators by default
            self.initial['operators'] = jr.operators.values_list('id') # refined as above.

推荐答案

使用Django查询集的flat=True构造:https://docs.djangoproject.com/en/dev/ref/models/querysets/#django.db.models.query.QuerySet.values_list

来自文档中的示例:

>>> Entry.objects.values_list('id', flat=True).order_by('id')
[1, 2, 3, ...]

Django相关问答推荐

使用序列化器获取Django ORM auth_user. id数据

Django显示交叉表格

Django Admin中显示的DateField下面的小提示是什么?

如何在Django REST框架中使用FactoryBoy创建不同的项目

当使用django-tinymce时,我在哪里指定referer?

通过在其他查询中使用来过滤对象

Django ORM:子查询上的文本聚合器

DecimalField 验证错误,返回不正确的值 Django

如何在 Django 中将下一个 8 月 1 日添加为 DateTimeField 默认值

在 python 视图中检测移动浏览器

关于Django中批量保存对象的问题

如何解决 AssertionError: .accepted_renderer not set on Response in django and ajax

Django RESTful API - django-piston vs. django-tastypie

在 Django 中使用 AuthenticationForm

UnicodeEncodeError:ascii编解码器无法编码字符

Django post_save 在不覆盖模型 save() 的情况下防止递归

如何在不同的元素上添加注释?

更改 Django ModelChoiceField 以显示用户的全名而不是用户名

Django 应用程序运行良好,但收到 TEMPLATE_* 警告消息

Django:AppRegistryNotReady()