PEP8 / Python3 compatibility (#29506)

This commit is contained in:
Benjamin Dauvergne 2019-01-24 15:47:08 +01:00
parent 37fc62bcca
commit 40c1d36c08
2 changed files with 10 additions and 12 deletions

View File

@ -26,8 +26,8 @@ from django.db import IntegrityError
from django.core.exceptions import ValidationError from django.core.exceptions import ValidationError
from rest_framework.generics import ListAPIView from rest_framework.generics import ListAPIView
from rest_framework import serializers, pagination, permissions from rest_framework import serializers, pagination
from rest_framework.decorators import list_route, detail_route from rest_framework.decorators import detail_route
from rest_framework.response import Response from rest_framework.response import Response
from rest_framework import status from rest_framework import status
@ -41,15 +41,15 @@ from . import models
class Base64ImageField(serializers.FileField): class Base64ImageField(serializers.FileField):
def to_internal_value(self, data): def to_internal_value(self, data):
# base64 encoded image - decode # "unicode/str Python3" data, means base64 encoded image - decode
if not isinstance(data, unicode): if not hasattr(data, 'isdecimal'):
raise ValidationError('must be base64 string') raise ValidationError('must be base64 string')
id = uuid.uuid4()
try: try:
content = base64.b64decode(data) content = base64.b64decode(data)
except: except ValueError:
raise ValidationError('invalid base64') raise ValidationError('invalid base64')
data = ContentFile(content, name = id.urn[9:] + '.jpg') identifier = uuid.uuid4()
data = ContentFile(content, name=identifier.urn[9:] + '.jpg')
return super(Base64ImageField, self).to_internal_value(data) return super(Base64ImageField, self).to_internal_value(data)
@ -90,7 +90,8 @@ class CUTValidateSerializer(serializers.ModelSerializer):
fields = ('id', 'created', 'external_id', 'status', 'reason', 'validated', 'sub') fields = ('id', 'created', 'external_id', 'status', 'reason', 'validated', 'sub')
@detail_route(methods=['get', 'post'], url_path='validate', permission_classes=(api_views.DjangoPermission('custom_user.cut_validate_user'),)) @detail_route(methods=['get', 'post'], url_path='validate',
permission_classes=(api_views.DjangoPermission('custom_user.cut_validate_user'),))
def validate_cut(self, request, uuid): def validate_cut(self, request, uuid):
user = self.get_object() user = self.get_object()
origin = get_origin(request) origin = get_origin(request)
@ -162,9 +163,6 @@ def validate_cut(self, request, uuid):
# attach new API to users' api # attach new API to users' api
api_views.UsersAPI.validate_cut = validate_cut api_views.UsersAPI.validate_cut = validate_cut
# re-register UsersAPI to get validate_cut
#api_views.router.register(r'users', api_views.UsersAPI, base_name='a2-api-users')
class ValidateFilter(FilterSet): class ValidateFilter(FilterSet):
class Meta: class Meta:

View File

@ -1,7 +1,7 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
JOHN = u'Jôhn' JOHN = u'Jôhn'
DOE = u'Dôe' DOE = u'Dôe'
EMAIL = 'john.doe@example.com' EMAIL = 'john.doe@example.com'