Django rest框架序列化详细名称
我有一个带有布尔字段的模型:Django rest框架序列化详细名称,django,serialization,django-rest-framework,Django,Serialization,Django Rest Framework,我有一个带有布尔字段的模型: class ExampleModel(User): field_value_one = models.BooleanField(verbose_name=_(u'Field Value One')) ....another boolean fields..... 如何为详细名称序列化编写序列化程序类? 我怎样才能得到这些数据 响应示例: { 'Field Value One' :true, ..... } 或 您可以从模型字
class ExampleModel(User):
field_value_one = models.BooleanField(verbose_name=_(u'Field Value One'))
....another boolean fields.....
如何为详细名称序列化编写序列化程序类?
我怎样才能得到这些数据
响应示例:
{
'Field Value One' :true,
.....
}
或
您可以从模型字段详细信息中获取详细名称。序列化程序方法字段的示例:
from rest_framework import serializers
from .models import ExampleModel
class ExampleModelSerializer(serializers.ModelSerializer):
field_value_one = serializers.SerializerMethodField()
class Meta(object):
model = ExampleModel
def get_field_value_one(self, obj):
# get model field
field = next(f for f in obj._meta.fields if f.name == 'field_value_one')
return {
'verbose_name': field.verbose_name.title(),
'value': obj.field_value_one
}
你能举例说明你希望序列化的数据是什么样子的吗?请使用编辑链接,而不是在注释中提供基本的细节。模型包含大约10个相同的字段。我可以为所有字段编写一个方法吗?
from rest_framework import serializers
from .models import ExampleModel
class ExampleModelSerializer(serializers.ModelSerializer):
field_value_one = serializers.SerializerMethodField()
class Meta(object):
model = ExampleModel
def get_field_value_one(self, obj):
# get model field
field = next(f for f in obj._meta.fields if f.name == 'field_value_one')
return {
'verbose_name': field.verbose_name.title(),
'value': obj.field_value_one
}