Made improvements in the user serializer

remotes/origin/enhancement/email-actions
David Barragán Merino 2013-10-17 15:31:16 +02:00
parent d00c077676
commit 3df7eea9e9
2 changed files with 8 additions and 3 deletions

View File

@ -28,6 +28,9 @@ class User(WatcherMixin, AbstractUser):
class Meta:
ordering = ["username"]
def get_full_name(self):
return super().get_full_name() or self.username or self.email
class Role(models.Model):
name = models.CharField(max_length=200, null=False, blank=False,

View File

@ -6,11 +6,13 @@ from .models import User, Role
class UserSerializer(serializers.ModelSerializer):
projects = serializers.SerializerMethodField('get_projects')
full_name = serializers.CharField(source='get_full_name', required=False)
class Meta:
model = User
fields = ('id', 'username', 'first_name', 'last_name', 'email', 'color',
'description', 'default_language', 'default_timezone', 'is_active',
'photo', 'projects')
fields = ('id', 'username', 'first_name', 'last_name', 'full_name', 'email',
'color', 'description', 'default_language', 'default_timezone',
'is_active', 'photo', 'projects')
def get_projects(self, obj):
return [{"id": x.id, "name": x.name} for x in obj.projects.all()]