Reputation: 183
I have model with boolean fields:
class ExampleModel(User):
field_value_one = models.BooleanField(verbose_name=_(u'Field Value One'))
....another boolean fields.....
How write serializator class for verbose_name serialization? How i can get this data?
Response Example:
{
'Field Value One' :true,
.....
}
or
{
field_value_one: {
verbose_name: 'Field Value One',
value: 'true'
}
}
Upvotes: 0
Views: 1484
Reputation: 2249
You can get verbose name from model field details. Example with serializer method field:
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
}
Upvotes: 2