Skip to content

Instantly share code, notes, and snippets.

View akshar-raaj's full-sized avatar
💭
Learning something new everyday!

Akshar Raaj akshar-raaj

💭
Learning something new everyday!
View GitHub Profile
class UserSerializer(serializers.ModelSerializer):
full_address = serializers.CharField(source='profile.get_full_address')
class Meta:
model = User
fields = ('email', 'first_name', 'last_name', 'full_address')
class UserSerializer(serializers.ModelSerializer):
street = serializers.CharField(source='profile.street')
city = serializers.CharField(source='profile.city')
class Meta:
model = User
fields = ('email', 'first_name', 'last_name', 'street', 'city')
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
street = models.CharField(max_length=100)
city = models.CharField(max_length=100)
def get_full_address(self):
return "%s, %s" % (self.street, self.city)
class UserSerializer(serializers.ModelSerializer):
user_name = serializers.CharField(source='username')
full_name = serializers.CharField(source='get_full_name')
class Meta:
model = User
fields = ('user_name', 'email', 'first_name', 'last_name', 'full_name')
class UserSerializer(serializers.ModelSerializer):
user_name = serializers.CharField(source='username')
class Meta:
model = User
fields = ('user_name', 'email', 'first_name', 'last_name')
@akshar-raaj
akshar-raaj / serializers.py
Created July 22, 2019 19:16
Effective serializer for read
from rest_framework import serializers
from django.contrib.auth.models import User
class UserSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('username', 'email', 'first_name', 'last_name')
@akshar-raaj
akshar-raaj / views.py
Created July 9, 2019 14:29
DRF Create user
def create_user(request):
user_dict = json.loads(request.body)
# Validate the POSTed data
try:
user = User.objects.create(**user_dict)
except Exception as e:
# Handle exception and gracefully return a proper response
pass
return JsonResponse({'first_name': user.first_name, 'last_name': user.last_name}, safe=False)
@akshar-raaj
akshar-raaj / views.py
Created July 9, 2019 11:19
DRF users with groups
def get_users(request):
users = list(User.objects.values(‘first_name’, 'last_name', 'email', ‘id’))
for user in users:
groups = list(user.groups.values('id', 'name'))
user['groups'] = groups
return JsonResponse(users, safe=False)
@akshar-raaj
akshar-raaj / views.py
Created July 9, 2019 11:16
DRF Vanilla view using serializer
def get_users(request):
users = UserSerializer()
return JsonResponse(users.data)
@akshar-raaj
akshar-raaj / serializers.py
Created July 9, 2019 11:15
DRF Vanilla view serializer
import json
class UserSerializer():
model = User
fields = ['first_name', 'last_name']
def get_queryset(self):
return self.model.objects.all()
@property
def data(self):
users = self.get_queryset()
for user in users: