updated for team, member and email registration

This commit is contained in:
2024-07-20 14:24:52 +09:00
parent 6de4aabebb
commit 1a8e97e945
5 changed files with 340 additions and 14 deletions

View File

@ -1,14 +1,16 @@
from rest_framework import serializers
from rest_framework_gis.serializers import GeoFeatureModelSerializer
from sqlalchemy.sql.functions import mode
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, Useractions, GifuAreas, RogUser, UserTracks, GoalImages, CheckinImages,CustomUser
from .models import Location, Location_line, Location_polygon, JpnAdminMainPerf, Useractions, GifuAreas, RogUser, UserTracks, GoalImages, CheckinImages,CustomUser, Team, Member, Entry
from drf_extra_fields.fields import Base64ImageField
from django.contrib.auth.hashers import make_password
#from django.contrib.auth.models import User
from .models import CustomUser
from django.contrib.auth import authenticate
from .models import TestModel
from .models import TempUser
class LocationCatSerializer(serializers.ModelSerializer):
@ -53,6 +55,39 @@ class JPN_main_perfSerializer(serializers.ModelSerializer):
# model=JpnAdminPerf
# fields=['id','et_id', 'et_right', 'et_left', 'adm2_l', 'adm1_l', 'adm0_l', 'adm0_r', 'adm1_r', 'adm2_r', 'admlevel']
#============= Akira ここから
class TeamSerializer(serializers.ModelSerializer):
class Meta:
model = Team
fields = ['zekken_number', 'team_name', 'password']
extra_kwargs = {'password': {'write_only': True}}
class MemberSerializer(serializers.ModelSerializer):
class Meta:
model = Member
fields = ['zekken_number', 'userid']
class EntrySerializer(serializers.ModelSerializer):
class Meta:
model = Entry
fields = ['zekken_number', 'event_code', 'date']
class CustomUserSerializer(serializers.ModelSerializer):
class Meta:
model = CustomUser
fields = ['email', 'firstname', 'lastname', 'userid', 'date_of_birth', 'password']
extra_kwargs = {
'password': {'write_only': True},
'userid': {'read_only': True}
}
def create(self, validated_data):
validated_data['password'] = make_password(validated_data.get('password'))
return super(CustomUserSerializer, self).create(validated_data)
#============= Akira ここまで
class GifuAreaSerializer(serializers.ModelSerializer):
class Meta:
@ -192,4 +227,4 @@ class RegistrationSerializer(serializers.ModelSerializer):
raise serializers.ValidationError({'password': 'Passwords must match.'})
user.set_password(password)
user.save()
return user
return user