SHIVERY Parfum Unisex PriaAroma bertahan hingga 48 jam di baju dan hingga 6 jam di kulit (kulit yang tidak terbasuh air/keringat) Buy |
Pada beberapa tutorial sebelumnya kita telah belajar tentang service user login, tidak lengkap rasanya kalau kita tidak membuat service register.
Service register merupakan pintu utama interaksi user dengan sistem yang kita bangun, banyak metode atau cara yang biasanya di gunakan user untuk register sering juga di sebut simple register.
Biasanya simpel register menggunakan third party atau pihak ketiga seperti api dari twitter, facebook, google dan yang lainya.
Pada tutorial ini kita juga akan belajar membuat simple register, user hanya perlu memasukan email dan password.
Berikut ini beberapa hal yang akan kita pelajari dibagian 1 ini.
{
"email":"user@example.com",
"password":"password@1223G",
"full_name":"Test By Johan"
}
Succes:
{
"status":"00",
"message":" Register Success, Check email and click link activation"
}
Gagal:
{
"status":"-1",
"message":"Register Failed, {dynamic-message}
}
class RegisterNewUser(serializers.Serializer):
email = serializers.CharField(max_length=35)
password = serializers.CharField(max_length=35)
full_name = serializers.CharField(max_length=150)
User.objects.create_user()
def create_register_user(data):
try:
User.objects.create_user(username= data['email'],
email=data['email'],
password=data['password'],
first_name=data['full_name']
)
common_response['status'] = '00'
common_response['message'] = 'Register Success, Check email and click link activation'
except Exception as e:
common_response['status'] = '-1'
common_response['message'] = str(e)
return common_response
class RegisterNewUserView(APIView):
def post(self, *args, **kwargs):
try:
data = JSONParser().parse(self.request)
serializer = RegisterNewUserSerializer(data=data)
if serializer.is_valid():
resp = create_register_user(data)
return JsonResponse(data = resp, status=200)
else:
return JsonResponse(serializer.errors, status=400)
except Exception as e:
return JsonResponse(data = {
"message": str(e)
}, status=400)
Serializer akan memvalidasi format payload yang di kirim oleh service client.
class CreateNewUserTestCase(TestCase):
data = {
"email":"user@example.com",
"password":"password@1223G",
"full_name":"Test By Johan"
}
def test_create_register_user_success(self):
resp = create_register_user(self.data)
self.assertEqual(resp['status'], "00")
Github: https://github.com/halovina/hvsuserservice/tree/register-user-bagian-1
Baca artikel lainya: